cercherò di farmi capire con degli esempi:

$arr4= array("15|d", "25|s", "10|a", "13|c");

arrivo di un nuovo elemento da aggiungere al mio array $a = "15|a";

andrebbe aggiunto in posizione 2 come sotto in quanto la prima parte dell'elemento è uguale a 15 (composizione elemento "prima parte|seconda parte" esempio elem = "13|f")

$new_arr4= array("15|d", "15|a", "25|s", "10|a", "13|a");


tralasciando il discorso di prima e seconda parte, in quanto nn interessa al momento io sto lavorando su questa soluzione

con array_search

<?


$$ord_arr = array();


$b = '10|a';


$arr = array('10|a','12|a','13|a','13|a','14|a');
$co_arr = count($arr);


$k = array_search($b, $arr);


echo 'pos '.$k.'<br>';


for($c=0; $c<=$co_arr; $c++){
$n += 1;
echo $k.' == '. $c.' ';


if($k == null){
$ord_arr[] = $arr[$c];
if($c == $co_arr){
$ord_arr[] = $b;
}
}else{


if($k == $c){
$ord_arr[] = $arr[$c];
$ord_arr[] = $b;
}else{
$ord_arr[] = $arr[$c];
}

}
echo ' n '.$n.' '.$ord_arr[$c].'<br>';
}

?>

funziona all'arrivo di un elemento che sia di posizione non null o diversa da 0
qualcuno mi può dare lumi?