Problem mit implode

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Problem mit implode

    Hallo ich habe ein Problem mir der implode Funktion. Ich möchte die IDs aus einem Array zu einen String für eine SQL abfrage bauen lassen, doch ich bekomme für jeden Arraywert immer nur array in meinen string geschrieben.
    Gemacht habe ich das so :
    PHP Code:
    $ids implode(","$fa_id); 
    Wenn ich $ids ausgeben lasse erhalte ich immer
    Array,Array,Array,Array,Array
    und das spuckt mir var_dump von fa_id aus
    array(5) { [0]=> array(1) { ["fa_id"]=> string(1) "7" }
    [1]=> array(1) { ["fa_id"]=> string(1) "7" }
    [2]=> array(1) { ["fa_id"]=> string(1) "7" }
    [3]=> array(1) { ["fa_id"]=> string(1) "5" }
    [4]=> array(1) { ["fa_id"]=> string(1) "4" }
    }
    Wäre nett wenn da Jemand weiter weiss
    mfg mo78

  • #2
    Wie auch im Handbuch zu entnehmen ist, erwartet implode ein eindimensionales Array. Offensichtlich lieferst du ihm allerdings ein 2 dimensionales.
    Warum tust du das?
    Wir werden alle sterben

    Comment


    • #3
      Naja bekomme die ID´s so ausgelesen und wollte mir eine weitere SQL abfrage sparen^^ Kann ich das Array denn in ein 1D array umwandeln ??
      Last edited by mo78; 02-08-2011, 13:21.

      Comment


      • #4
        Naja...
        Ein SQL Server liefert so was normaler weise nicht.
        Also wirst du das Array so erstellt haben, irgendwo, und da solltest du ansetzen.

        Kann ich das Array denn in eine 1D array umwandeln ??
        Sieht nicht so aus, sonst würdest du es ja tun, oder?
        Ein technisches oder logisches Hemmnis sehe ich nicht.
        Wir werden alle sterben

        Comment


        • #5
          Problem in deinem Fall ist, das Array ist genau andersherum verschachtelt, wie es implode gebrauchen könnte ....

          also einen kleinen Zwischenschritt

          PHP Code:
          $new_fa=array();
          foreach (
          $fa_id as $daten)
            
          $new_fa[]=$daten['fa_id'];

          .. 
          // und nun dein implode
          $ids implode(","$new_fa); 
          aber .. mit Verlaub - warum willst du die ids als Kommaseparierte Liste haben ? für eine in( )-Prüfung ?
          [font=Verdana]
          Wer LESEN kann, ist klar im Vorteil!
          [/font]

          Comment


          • #6
            Besten Dank und ja für eine In prüfung brauch ich das.
            Ich werd mal ausprobieren ob das funzt. Und

            Comment


            • #7
              Und selbst dann, kommt die 7 noch mehrfach vor.
              Wir werden alle sterben

              Comment


              • #8
                Ja ich weiss aber das liegt an doppeleinträgen in der DB das ist noch Testfusch sozusagen was im Betrieb dann natürlich nicht mehr ist

                Comment

                Working...
                X