php實現插入陣列但不影響原有順序的`方法,例項分析了php陣列操作的技巧,具有一定參考借鑑價值,需要的朋友可以參考下。
本文例項講述了php實現插入陣列但不影響原有順序的方法。分享給大家供大家參考。具體實現方法如下:
function array_intsort($array,$num) {
$array_right = $array_left = array();
$length = count($array);
if ($num < $array[0]) {
array_unshift($array,$num);
return $array;
} else {
for($i=0; $i < $length; $i++) {
if ($i + 1 < $length) {
if ($array[$i] < $num && $num < $array[$i+1]) {
$array_right = array_slice($array,$i + 1);
$array_left = array_slice($array,0,$i);
$array_left[] = $num;
break;
}
} else {
$array_left = $array;
$array_left[] = $num;
}
}
return array_merge($array_left,$array_right);
}
}
【拓展閱讀】
PHP中將陣列當做一個棧,主要是使用array_push()和array_pop()兩個系統函式來完成。入棧主要是利用array_push()函式向第一個引數的陣列尾部新增一個或多個元素,然後返回新陣列的長度,示例如下:
而PHP中,將陣列當作是佇列則主要是用array_push()和array_shift()實現。
複製程式碼 程式碼如下:
<?php
$zhan=array("WEB");//宣告一個數組當做佇列
array_push($zhan,"PHP");//將字串壓入棧(陣列)中
array_push($zhan,"");//再壓入一個元素
print_r($zhan);//列印陣列內容
?>
出棧主要是利用array_shift()函式將陣列的第一個元素彈出,並將陣列的長度減1,示例如下:
複製程式碼 程式碼如下:
<?php
$zhan=array("WEB","","WEB開發筆記","PHP","網站建設");//宣告一個數組當做棧
array_shift($zhan);//將字串出隊(陣列)中
print_r($zhan);//列印陣列內容 Array([0] => WEB[1] => [2] => WEB開發筆記[3] => PHP)
?> </p