array: value und nicht key löschen
berd
- php
0 Blubbermann0 Andi
hallo !
ich habe folgendes array:
Array
(
[1] => 2
[4] => 5
[5] => 6
[6] => 7
[7] => 8
[8] => 9
)
jetzt möchte ich den value 7 löschen (also nicht den key od. index 7)
wie mache ich das .. ?
gruss im voraus
jetzt möchte ich den value 7 löschen (also nicht den key od. index 7)
wie mache ich das .. ?
gruss im voraus
Überschreibe den Wert einfach mit einem leeren String..
Überschreibe den Wert einfach mit einem leeren String..
wieso nicht einfach unset($test[6]); ?
Überschreibe den Wert einfach mit einem leeren String..
wieso nicht einfach unset($test[6]); ?
Ja, wieso eigentlich nicht?
Hallo Blubbermann.
Überschreibe den Wert einfach mit einem leeren String..
wieso nicht einfach unset($test[6]); ?
Ja, wieso eigentlich nicht?
Weil Berd dies so geschrieben hat:
jetzt möchte ich den value 7 löschen (also nicht den key od. index 7)
Beim Einsatz von unset wird das gesamte Element (also Schlüssel und Wert) gelöscht.
Einen schönen Freitag noch.
Gruß, Ashura
Weil Berd dies so geschrieben hat:
jetzt möchte ich den value 7 löschen (also nicht den key od. index 7)
Beim Einsatz von unset wird das gesamte Element (also Schlüssel und Wert) gelöscht.
tschuldigung, ich habe mich wohl ein bisschen falsch ausgedrückt.
ich möchte natürlich schon das ganze element löschen, jedoch habe ich in diesem beispiel nur den wert 7 und weiss den key davon nicht.
oder habe ich ein strukturelles problem ?
gruss und danke im voraus, berd
Hallo Berd.
ich möchte natürlich schon das ganze element löschen, jedoch habe ich in diesem beispiel nur den wert 7 und weiss den key davon nicht.
Dann durchlaufe mit einer einfachen for-Schleife den Array und lösche per unset das (im aktuellen Schleifendurchlauf aktuelle) Element, dessen Wert „7“ ist.
oder habe ich ein strukturelles problem ?
Ohne dein Vorhaben zu kennen, kann ich keine optimalere Lösung bieten.
Wie kommen die Werte zustande und warum?
Einen schönen Freitag noch.
Gruß, Ashura
Ohne dein Vorhaben zu kennen, kann ich keine optimalere Lösung bieten.
Wie kommen die Werte zustande und warum?
hmm eigentlich handelt es sich um etwas simples ..
$p[$y][$x] = array(1, 2, 3, 4, 5, 6, 7, 8, 9);
das sind die zahlen, die in einem sudoku feld möglich sind.
jetzt werded nach und nach zahlen ausgeschlossen, die sozusagen "verboten" sind.
wenn jetzt halt nur noch eine zahl im array ist, wird die in das feld eingetragen.
ich hoffe, du verstehst was ich meine.
gruss berd
Hallo berd.
wenn jetzt halt nur noch eine zahl im array ist, wird die in das feld eingetragen.
ich hoffe, du verstehst was ich meine.
Ja, durchaus. In diesem Fall sehe ich aber leider auch keine bessere Lösung.
Nur ein Vorschlag: du kannst den Array mit geringerem Schreibaufwand erzeugen, indem du range verwendest.
Einen schönen Freitag noch.
Gruß, Ashura
Hi,
Ohne dein Vorhaben zu kennen, kann ich keine optimalere Lösung bieten.
Selbst wenn Du es kennst, kannst Du das nicht, weil das unmöglich ist ... ;-)
cu,
Andreas
Hallo MudGuard.
Ohne dein Vorhaben zu kennen, kann ich keine optimalere Lösung bieten.
Selbst wenn Du es kennst, kannst Du das nicht, weil das unmöglich ist ... ;-)
Der Superlativwahn (wenn auch hier Komparativ) ist nicht zu bremsen!
Einen schönen Freitag noch.
Gruß, Ashura
echo $begrüßung;
ich möchte natürlich schon das ganze element löschen, jedoch habe ich in diesem beispiel nur den wert 7 und weiss den key davon nicht.
Dann durchlaufe mit einer einfachen for-Schleife den Array und lösche per unset das (im aktuellen Schleifendurchlauf aktuelle) Element, dessen Wert „7“ ist.
for ist da sicher nicht angebracht. Wenn die Elemente nicht mehr lückenlos vorhanden sind, was nach einem unset() der Fall ist, gibt es einen Zugriff auf einen nicht vorhandenen Schlüssel. Wenn schon zu Fuß, dann sollte man hier foreach verwenden.
Aber warum zu Fuß gehen, wenn <del>man mit dem Auto</del> es automatisch geht: array_search().
echo "$verabschiedung $name";