Mam kolekcję, którą chcę iterować i modyfikować podczas pobierania niektórych jej elementów. Ale nie mogłem znaleźć sposobu ani metody usunięcia tego pobranego elementu.Jak usunąć (usunąć) element kolekcji po jego pobraniu?
$selected = [];
foreach ($collection as $key => $value) {
if ($collection->selected == true) {
$selected[] = $value;
unset($value);
}
}
To tylko reprezentacja mojego pytania do demonstracji.
Po @Ohgodwhy sprawdziłem funkcję forget(), sprawdziłem ją ponownie i zobaczyłem, że naprawdę źle zrozumiałem funkcję. Właśnie tego szukałem. Po dodaniu "$ collection-> forget ($ key)" wewnątrz instrukcji if jak na poniższym demo, zadziałało.
$selected = [];
foreach ($collection as $key => $value) {
if ($collection->selected == true) {
$selected[] = $value;
$collection->forget($key);
}
}
(jest to tylko demonstracja)
Sugeruję, aby nie przechowywać elementy w tablicy jednak stworzyć nową kolekcję i dodawania elementów do niego poprzez naciśnięcie. – Amarnasan
@Amarnasan Jak by to było? Nie potrzebuję go teraz, ale myślę, że może będę go potrzebować w przyszłości. –