L learn Medlem sedan jan. 2005 1 130 inlägg Trådstart 27 aug. 2006 18:57 #1 Jag har en array med en massa element. Nu har jag ett värde som jag vill kolla ifall det finns med i arrayen eller inte. Finns det ngt element med det givna värdet så skall detta element tas bort.
Hur gör jag detta?
Fuel Medlem sedan okt. 2000 1 285 inlägg hehe .. det här var ett tag sen.. detta verkar funka iaf ?
<?php
$the_array = array("Nisse1", "Nisse2", "Nisse3", "Nisse4");
function replacer($text,$new,$the_array)
{
$num = count($the_array);
for ($i = 0;$i < $num; $i++) {
$oj .= str_replace($text, $new, $the_array[$i]);
}
print_r($oj);
}
replacer('Nisse2','learn',$the_array);
?>
L learn Medlem sedan jan. 2005 1 130 inlägg Tack, det var ju en lösning.
Fuel Medlem sedan okt. 2000 1 285 inlägg hoppas nästan nån kommer och rättar mig .. det kändes inte snyggt ..
Patrik81 Medlem sedan okt. 2001 538 inlägg Helt otestat, utan löften om "optimalitet" men here goes:
function remove( $value, $array )
{
$new = array();
foreach ( $array as $val )
{
if ( !$value != $val ) {
$new[] = $val;
}
}
return $new;
}
$list = array( "Det", "var", "en", "gång", "en", "liten", "get", "som", "hette", "Agnus" );
$list2 = remove( "var", $list );
Mvh Patrik
tronez Medlem sedan juli 2001 728 inlägg <?php
$array = array("Nisse1", "Nisse2", "Nisse3", "Nisse4");
echo "<pre>";
print_r($array);
echo "</pre>";
function delete($text,$array)
{
global $array;
if(in_array($text,$array)){
while ($current_index = current($array)) {
if ($current_index == $text) {
unset( $array[key($array)] );
break;
}
next($array);
}
}
}
delete('Nisse3',$array);
echo "<br><br><pre>";
print_r($array);
echo "</pre>";
?>
denna borde även funka
P plup Medlem sedan sep. 2005 93 inlägg Oj oj oj, all denna fulkod hurts my brains
Dom inbyggda funktionerna i PHP är till för att användas !
<?php
$array = array ('Nisse1', 'Nisse2', 'Nisse2', 'Nisse3', 'Nisse4');
$array = array_unique ($array); // RAD #4!
$key = array_search ('Nisse2', $array);
unset ($array[$key]);
$array = array_values ($array); // RAD #7!
print_r ($array);
?>
Rad 4 behövs ENDAST om du har "dublett"-värden i din array (I detta fall "Nisse2").
Rad 7 behövs ENDAST om du behöver "re-indexera" om din array.