Array Schlüssel ausschliessen
hawkmaster
- php
0 Joachim0 Blaubart0 dedlfix0 hawkmaster
0 Peter Pan
Hallo zusammen,
Ein Array hat 3 Schlüssel mit verschiedenen Werten.
Ein print_r($array) bringt folgendes:
Array ( [count] => 2 [0] => Students [1] => Users )
Ich möchte den Schlüssel "count" ausschliessen, also nur die Werte von Schlüssel 0 und 1.
Wenn ich es so versuche:
foreach($array as $key => $members){
if($key != "count"){
echo "der User ist Mitglied von $members <br>";
}
}
Wird mir immer nur der letzte Wert ausgegeben, also hier immer nur "Users".
Mit der Prüfung "if(is_numeric($key)){" klappt es jedoch.
Warum ist das so bzw. klappt die Prüfung "if($key != "count")" nicht?
vielen Dank und viele Grüße
hawk
Hi,
foreach($array as $key => $members){
if($key != "count"){
echo "der User ist Mitglied von $members <br>";
}
teste doch mal:
if ($key === "count") continue;
echo $key . " - " . $members;
Möglicherweise hilft hier Prüfung auf Identität.
Gruesse, Joachim
Tach.
Array ( [count] => 2 [0] => Students [1] => Users )
foreach($array as $key => $members){
if($key != "count"){
echo "der User ist Mitglied von $members <br>";
}
}
Wird mir immer nur der letzte Wert ausgegeben, also hier immer nur "Users".
Was erwartest Du auch beim Vergleich von Äpfel und Birnen? Um eine Zahl mit einer Zeichenkette vergleichen zu können, muß erstmal eine Typenumwandlung betrieben werden. Und "count" ergibt als Zahl eine 0, deshalb erscheinen bei Dir keine Students.
Mit einem !==
hingegen berücksichtigst Du beim Vergleich zusätzlich noch den Typ der Operanden.
echo $begrüßung;
Mit einem !== hingegen berücksichtigst Du beim Vergleich zusätzlich noch den Typ der Operanden.
Siehe dazu auch: PHP type comparison tables
echo "$verabschiedung $name";
Hallo Blaubart,
danke für deine Hilfe.
Was erwartest Du auch beim Vergleich von Äpfel und Birnen? Um eine Zahl mit einer Zeichenkette vergleichen zu können, muß erstmal eine Typenumwandlung betrieben werden. Und "count" ergibt als Zahl eine 0, deshalb erscheinen bei Dir keine Students.
ja so betrachtet ist das natürlich klar. Mir war schon bewusst das ein numerischer Index vorkommt und Indexe mit dem String "count".
Ich wollte ursprünglich irgend was machen mit "array_key_exists" oder einer anderen Array Funktion, also prüfen ob der Key "count" vorkommt.
vielen Dank und viele Grüße
hawk
Hi!
Ein Array hat 3 Schlüssel mit verschiedenen Werten.
Ein var_dump($variable) ermöglicht oft tiefere Erkenntnis beim Entwickler.
off:PP