Viennamade: einzelne Array-Elemente löschen

Hallo liebe Forumsteilnehmer!

Ich habe wieder mal ein Array-Problem, ein einfaches denke ich. So sieht er aus, der Array:

Array
(
    [Feld] => Sprachen.Kuerzel
    [Wert] => en
)

Array
(
    [Feld] => Sprachen.Bezeichnung
    [Wert] => english
)

Alle Array-Elemente 'Wert' sollen gelöscht werden.
So gehts nicht:
foreach ($array as $x)
  {
    unset($x['Wert']);
  }

Wie geht es denn?
Danke
Viennamade

  1. Hi,

    Alle Array-Elemente 'Wert' sollen gelöscht werden.
    So gehts nicht:
    foreach ($array as $x)
      {
        unset($x['Wert']);
      }

    du weist in der foreach-Schleife der Variablen $x den Wert des jeweils aktuellen Elementes von $array zu und löschst dann in der Variablen $x das Element mit dem Index 'Wert' (siehe auch http://de2.php.net/manual/de/control-structures.foreach.php, 2. Anmerkung). Du möchtest aber doch nicht $x bearbeiten, sondern $array - dazu brauchst du den Schlüssel:

    foreach ($array as $key => $val) {

    unset($array[$key]['Wert']);

    }

    müsste funktionieren.

    Gruß,
    Andreas.

    1. Hallo!

      Alle Array-Elemente 'Wert' sollen gelöscht werden, so geht es nicht:
      foreach ($array as $x)
        {
          unset($x['Wert']);
        }

      du weist in der foreach-Schleife der Variablen $x den Wert des jeweils aktuellen Elementes von $array zu und löschst dann in der Variablen $x das Element mit dem Index 'Wert' ....

      Jo, das habe ich mit eingebauten echo-Befehlen bemerkt, wußte es aber nicht zu verbessern.

      Du möchtest aber doch nicht $x bearbeiten, sondern $array - dazu brauchst du den Schlüssel:
      foreach ($array as $key => $val) {
          unset($array[$key]['Wert']);
      }
      müsste funktionieren.

      Tut es auch!

      Danke!
      Viennamade