Herbert mit den großen Ohren und dem kleinen Kinn: php4 - "Bad arguments to implode()" ????

Guten Morgen,

Ich bekomme vom Übersetzer immer die Fehlermeldung:
"bad arguments to implode()".
Dennoch macht die Funktion was sie soll!
?????
Hilfe ....
function area($aTrans,$area)
{
 $aArea = explode("+", $area);

for ($i=0; $i<count($aArea); $i++) {

switch($aArea[$i]) {

// Nord
     case "n":
         $gebiet[$i] = $aTrans['gebiet_nord'];
         break;

// Nordost
     case "no":
         $gebiet[$i] = $aTrans['gebiet_nordost'];
         break;

// Ost
     case "o":
         $gebiet[$i] = $aTrans['gebiet_ost'];
         break;

// Südost
     case "so":
         $gebiet[$i] = $aTrans['gebiet_suedost'];
         break;

// Süd
     case "s":
         $gebiet[$i] = $aTrans['gebiet_sued'];
         break;

// Südwest
     case "sw":
         $gebiet[$i] = $aTrans['gebiet_suedwest'];
         break;

// West
     case "w":
         $gebiet[$i] = $aTrans['gebiet_west'];
         break;

// Nordwest
     case "nw":
         $gebiet[$i] = $aTrans['gebiet_nordwest'];
         break;

}// End switch

$slash_separated = implode(", ", $gebiet);

} // End for

return $slash_separated;
}

  1. Ich bekomme vom Übersetzer immer die Fehlermeldung:
    "bad arguments to implode()".
    Dennoch macht die Funktion was sie soll!

    $slash_separated = implode(", ", $gebiet);

    Wie wär's, wenn Du Dir einfach mal anschaust, was $gebiet denn für einen Typ hat? var_dump() hilft Dir bei der Erleuchtung.

    Gruß,
      soenk.e

    1. Hi Soenke,

      Wie wär's, wenn Du Dir einfach mal anschaust, was $gebiet denn für einen Typ hat? var_dump() hilft Dir bei der Erleuchtung.

      Habe ich gemacht.
      Hate aber keine Erleuchtung gebracht:

      array(1) { [0]=> string(4) "West" }
      array(1) { [0]=> string(8) "Süd-West" }
      array(1) { [0]=> string(7) "Süd-Ost" }
      array(1) { [0]=> string(3) "Ost" }
      array(1) { [0]=> string(3) "Ost" }

      Weiß immer noch nicht wo der Fehler liegt.
      Könntest Du es mir bitte sagen? Ich weiß echt nicht weiter.

      Gruss

      HB

      1. Halihallo Herbert

        Wie wär's, wenn Du Dir einfach mal anschaust, was $gebiet denn für einen Typ hat? var_dump() hilft Dir bei der Erleuchtung.
        Habe ich gemacht.
        Hate aber keine Erleuchtung gebracht:
        Weiß immer noch nicht wo der Fehler liegt.
        Könntest Du es mir bitte sagen? Ich weiß echt nicht weiter.

        Äm, was steht in der Doku, was implode für einen Datentypen erwartet? - Ein Array? -
        Was gibt es denn da noch zu implodieren?

        Viele Grüsse

        Philipp

        --
        RTFM! - Foren steigern das Aufkommen von Redundanz im Internet, danke für das lesen der Manuals.
        Selbstbedienung! - Das SelfForum ist ein Gratis-Restaurant mit Selbstbedienung, Menüangebot steht in den </faq/> und dem </archiv/>.
        1. Halihallo

          Äm, was steht in der Doku, was implode für einen Datentypen erwartet? - Ein Array? -
          Was gibt es denn da noch zu implodieren?

          Oh, sch***e, ich bin heute etwas Up-Side-Down ;-)
          Ziehe meine Aussage zurück und verdrück mich in die dunkle Ecke...

          Viele Grüsse

          Philipp

          --
          RTFM! - Foren steigern das Aufkommen von Redundanz im Internet, danke für das lesen der Manuals.
          Selbstbedienung! - Das SelfForum ist ein Gratis-Restaurant mit Selbstbedienung, Menüangebot steht in den </faq/> und dem </archiv/>.
      2. Weiß immer noch nicht wo der Fehler liegt.

        Also hier funktioniert's einwandfrei. Du solltest aber den implode()-Aufruf _nach_ der for-Schleife machen, denn in der Schleife macht er keinen großen Sinn. Du überschreibst lediglich bei jedem Durchlauf $slah_separated mit dem aktuellen Stand von $gebiet, diese Aufrufe kannst Du Dir allesamt sparen.

        Gruß,
          soenk.e