webForumDet fria alternativet

Radera ett element i array

PHPur PHP

5 svar · 416 visningar · startad av learn

Medlem sedan jan. 20051 130 inlägg
Frågan#1

Jag vill kunna radera ett givet element i min array.

Exempel:


$array = array('hej','tjena','halloj');

$ny_array = ta_bort(1,$array); // 1 är den key jag vill ta bort

// $ny_array innehåller nu 'hej', 'halloj'

Hur ska min funktion "ta_bort()" se ut?

Medlem sedan juli 20023 617 inlägg
#2
function ta_bort($i,$array)
{
	unset($array[$i]);
	return $array;
}
Medlem sedan juni 20014 421 inlägg
#3

Hmm, blir det inte ett hål i arrayen då?

Är det inte bättre om han gör så här:

function ta_bort($i,$array) 
{ 
    unset($array[$i]); 
    return array_values($array); 
}
Medlem sedan jan. 20051 130 inlägg
#4

Jasså, trodde att det endast då är värdet i elementet som raderas och att själva elementet ligger kvar...

Att $ny_array då innehåller 'hej', '', 'halloj'

Får väl prova igen då.

R: Colione hann visst först... :)

Medlem sedan juli 20023 617 inlägg
#5

colione skrev:

Är det inte bättre om han gör så här:

Det har du rätt i. :)

learn: "Elementet" försvinner, men som colione påpekar blir det ett hål i indexeringen.

Medlem sedan juni 20014 421 inlägg
#6

Acceptera som slutgiltigt svar?

134 ms totalt · 3 externa anrop · v20260731065814-full.b746b907
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)