Woran liegt dies?
unset() will wissen was es löschen soll. Mich wundert, dass Du keine Notizen empfängst. Auch wenn meine - flexible, lesbare, verständliche, funktionierende und nicht mit Nachteilen behaftete - Lösung wieder Widerspruch ernten wird: Hier die allfällige Erweiterung:
<?php
$fields[1]='Hallo';
$fields[2]='weg damit';
$fields['foo']='Hallo';
$fields['bar']='Hallo';
foreach (array_keys($fields) as $key) {
if ('weg damit' == $fields[$key]) {
unset($fields[$key]);
} else {
$fields[$key] .= ' Welt!';
}
}
print_r ($fields);
?>
~> php test.php
Array
(
[1] => Hallo Welt!
[foo] => Hallo Welt!
[bar] => Hallo Welt!
)