Hi,
Wieso löscht php mit empty und unset mein leeren array key nicht???
$array = array(
"key1" => "value1",
"key2" => "",
"key3" => "value3",
"key4" => "value4",
"key5" => "",
"key6" => "value6",
);$anzahl = count($array);
for( $a = 0; $a <= $anzahl; $a++ )
{
if(empty($array[$a]))
{
unset($array[$a]);
}
}
PHP löscht die leeren Array-Elemente sehr wohl. Dein Problem hierbei ist, dass du die Elemente $array[0] bis $array[6] löschst. Diese haben allerdings auch vorher schon nicht existiert, da du die Elemente $array['key1'] bis $array['key6'] definiert hast. Und diese Elemente werden in deiner Schleife weder abgefragt, noch gelöscht. Benutzt du folgende Schleife, müsste es funktionieren:
foreach ($array as $key => $val) {
if (empty($val))
unset($array[$key]);
}
Gruß,
Andreas.