En fråga om referenser
3 svar · 372 visningar · startad av Troxy
Ingen. Men det första exemplet anses av de flesta nog vara lite fulare.
Ah, detta förklarar en del förvirring! :birp
På tal om referenser. Säg att jag har en foreach-loop med referenser, såhär:
foreach($array as &$row) {
if (...) {
$row++;
} else {
unset($row); //Detta avsätter bara referensen, inte själva raden.
}
}
Kan man ta bort raden ur arrayen med hjälp av referensen?
Troxy skrev:
Kan man ta bort raden ur arrayen med hjälp av referensen?
Nej. Du kan bara sätta dess innehåll till NULL.
Referensräkning innebär att man måste ta bort varje referens till dess att ingen återstår. Då slutar det som pekats på att existera.
För att ta bort ett värde ur en array måste du alltså köra:
unset($arr[$key]);