① php如何在數組中插入值
$input = array(12, 10, 9);
array_push($input,11);
rsort($input);
print_r($input);
② php中怎樣向關聯數組的指定位置插入另一個數組的元素
這個功能需求來自於網站運營策略,舉倒子:
在一個排行列表中,默認有以下元素,順序有一定的依據,假設是按下載次數排列。
$rows = array(
array('name'=>'QQ2010'),
array('name'=>'QQ2009'),
array('name'=>'迅雷5'),
array('name'=>'飛信2010'),
array('name'=>'Kugoo2010'),
array('name'=>'TTplayer'),
array('name'=>'Firefox4.0'),
array('name'=>'美圖秀秀'),
array('name'=>'360safe'),
array('name'=>'Chrome6')
);
如果有一個客戶[可牛殺毒]想買花10元/元下我們第二個位置,可以大家想,直接把QQ2009替換掉不就完事了嗎。不,那樣的話用戶體驗並不好,明明QQ2009是一個下載次數比較多的軟體,為什麼在列表中卻沒有了呢。
其實我們真正的需求是把QQ2009以下的單元都往後推,騰出第二個位置來給[可牛殺毒]。如果頁面中只能顯示10個單元,那倒霉的就是[Chrome6]了,誰叫他們付費買我們的位置呢,呵呵。
再說到程序原理上來吧,PHP要實現這個需求,挺簡單,用數組函數array_splice就可以了,具體用法參照PHP手冊。
給一個完整的例子吧:
<?php
$rows = array(
array('name'=>'QQ2010',),
array('name'=>'QQ2009',),
array('name'=>'迅雷5',),
array('name'=>'飛信2010',),
array('name'=>'Kugoo2010',),
array('name'=>'TTplayer',),
array('name'=>'Firefox4.0',),
array('name'=>'美圖秀秀',),
array('name'=>'360safe',),
array('name'=>'Chrome6',),
);
$pop = array(
'2'=>array('name'=>'可牛殺毒'),
'5'=>array('name'=>'金山詞霸2010'),
);
foreach($pop as $key=>$p){
array_splice($rows, $key-1, 0, array($p));
}
var_mp($rows);
?>
最近的結果是:
array(12) {
[0]=>
array(1) {
["name"]=>
string(6) "QQ2010"
}
[1]=>
array(1) {
["name"]=>
string(8) "可牛殺毒"
}
[2]=>
array(1) {
["name"]=>
string(6) "QQ2009"
}
[3]=>
array(1) {
["name"]=>
string(5) "迅雷5"
}
[4]=>
array(1) {
["name"]=>
string(12) "金山詞霸2010"
}
[5]=>
array(1) {
["name"]=>
string(8) "飛信2010"
}
[6]=>
array(1) {
["name"]=>
string(9) "Kugoo2010"
}
[7]=>
array(1) {
["name"]=>
string(8) "TTplayer"
}
[8]=>
array(1) {
["name"]=>
string(10) "Firefox4.0"
}
[9]=>
array(1) {
["name"]=>
string(8) "美圖秀秀"
}
[10]=>
array(1) {
["name"]=>
string(7) "360safe"
}
[11]=>
array(1) {
["name"]=>
string(7) "Chrome6"
}
}
③ PHP如何在數組指定位置插入元素
第一步$arr=array('a','b','c','d','e','f','g');//目標數組
第二步$i_arr=array('1','2');//要插入的數組
第三步$n=2;//插入的位置
第四步array_splice($arr,$n,0,$i_arr);
第五步print_r($arr);
按順序輸入,並且輸入正確就可以了。
④ php如何實現往數組中添加元素又不改變下標的方法
在PHP中,使用array_push()函數可以向數組中添加元素,將傳入的元素添加到某個數組末尾,並返回數組新的單元總數.
語法:int arrar_push(array array,mixed var[,mixed...])
說明:參數array為指定的數組,參數var是加入數組中的值.
使用array_push()函數向數組中添加元素,並輸出添加元素後的數組,代碼如下
$array = array(0=>'迅美科技',1=>'網站建設')
echo "添加前的數組元素:"
print_r($array);
echo"
";
array_push($array,'業務代表:李生')
echo"添加後的數組元素:"
print_r($array);
?>
運行代碼後的結果為:
添加前的數組元素:Array([0]=>迅美科技 [1]=>網站建設)
添加後的數組元素:Array([0]=>迅美科技 [1]=>網站建設 [2]=>業務代表:李生)關於這個問題,差不多就是這個樣子的了,你如果不明白,可以自己去後盾瞅瞅,我這些都是在後盾上學的,有空可以去看一下,就算不喜歡也沒關系啊,何樂而不為呢?
⑤ php數組函數序列之array_splice() - 在數組任意位置插入元素
array_splice定義和用法
array_splice()
函數與
array_slice()
函數類似,選擇數組中的一系列元素,但不返回,而是刪除它們並用其它值代替。
如果提供了第四個參數,則之前選中的那些元素將被第四個參數指定的數組取代。
最後生成的數組將會返回。
語法
array_splice(array,offset,length,array)參數
描述
array
必需。規定數組。
offset
必需。數值。如果
offset
為正,則從輸入數組中該值指定的偏移量開始移除。如果
offset
為負,則從輸入數組末尾倒數該值指定的偏移量開始移除。
length
可選。數值。如果省略該參數,則移除數組中從
offset
到
結尾的所有部分。如果指定了
length
並且為正值,則移除這么多元素。如果指定了
length
且為負值,則移除從
offset
到數組末尾倒數
length
為止中間所有的元素。
array
被移除的元素由此數組中的元素替代。如果沒有移除任何值,則此數組中的元素將插入到指定位置。
提示和注釋
提示:如果函數沒有刪除任何元素
(length=0),則替代數組將從
start
參數的位置插入。(參見例子
3)
注釋:不保留替代數組中的鍵。
例子
1
復制代碼
代碼如下:
<?php
$a1=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
$a2=array(0=>"Tiger",1=>"Lion");
array_splice($a1,0,2,$a2);
print_r($a1);
?>
輸出:
Array
(
[0]
=>
Tiger
[1]
=>
Lion
[2]
=>
Horse
[3]
=>
Bird
)例子
2
與例子
1
相同,但是輸出返回的數組:
復制代碼
代碼如下:
<?php
$a1=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
$a2=array(0=>"Tiger",1=>"Lion");
print_r(array_splice($a1,0,2,$a2));
?>
輸出:
Array
(
[0]
=>
Dog
[1]
=>
Cat
)例子
3
length
參數設置為
0:
復制代碼
代碼如下:
<?php
$a1=array(0=>"Dog",1=>"Cat");
$a2=array(0=>"Tiger",1=>"Lion");
array_splice($a1,1,0,$a2);
print_r($a1);
?>
輸出:
Array
(
[0]
=>
Dog
[1]
=>
Tiger
[2]
=>
Lion
[3]
=>
Cat
)
⑥ 如何將一個php二維數組插入另一個二維數組,如:
array_splice(array,offset,length,array)
array 必需。規定數組。
offset 必需。數值。如果 offset 為正,則從輸入數組中該值指定的偏移量開始移除。如果 offset 為負,則從輸入數組末尾倒數該值指定的偏移量開始移除。
length 可選。數值。如果省略該參數,則移除數組中從 offset 到 結尾的所有部分。如果指定了 length 並且為正值,則移除這么多元素。如果指定了 length 且為負值,則移除從 offset 到數組末尾倒數 length 為止中間所有的元素。
array 被移除的元素由此數組中的元素替代。如果沒有移除任何值,則此數組中的元素將插入到指定位置。
length 參數設置為 0:
<?php
$a1=array(0=>"Dog",1=>"Cat");
$a2=array(0=>"Tiger",1=>"Lion");
array_splice($a1,1,0,$a2);
print_r($a1);
?>
輸出:
Array ( [0] => Dog [1] => Tiger [2] => Lion [3] => Cat )
⑦ PHP如何給數組中每個元素都加一個指定值
它的方法也很簡單:
array_rand($arr[, $num])$arr == 用來取元素的數組$num == 隨機取下標的個數其中第二個參數 $num 是可選的,默認為1 。
注意:它的返回值在第二個參數大於 1 的時候是一個數組;當第二個參數不設或者傳值 1 的時候是一個下標。
簡單的示例代碼如下:
1、第二個參數不傳值的情況;$arr = Array('a', 'b');$rndKey = array_rand($arr);echo $arr[$rndKey];//輸出 a 或者 b
2、第二個參數傳值大於 1 的情況;$arr = Array('a', 'b', 'c', 'd');$rndKey = array_rand($arr, 2);print_r($rndKey]);//輸出一個隨機key的數組
⑧ php如何使用指定的鍵和值填充數組
可以使用數組函數array_fill_keys來指定
⑨ php數組怎麼添加一個元素
有兩種方法添加一個元素:分別是 push()和arr[]
1、Php代碼$arr = array();array_push($arr, el1, el2 ... eln);
2、Php代碼$arr = array();$arr[] = el1;$arr[] = el2;...$arr[] = eln;
(9)php數組指定插入擴展閱讀:
PHP的大版本主要分三支:PHP4/PHP5/PHP6
其中,PHP4由於太古老、對QQ支持不力已基本被淘汰,請無視PHP4。
PHP6由於基本沒有生產線上的應用,還基本只是一款概念產品,很多功能已在PHP5.3.3上實現,所以也不詳述,請無視PHP6。
PHP5的版本主要分四支:PHP5.2之前的版本、PHP5.2.X、PHP5.3和日前發布的PHP5.4。
⑩ php用給定的值填充數組
array_fill
(PHP 4 >= 4.2.0, PHP 5, PHP 7)
array_fill — 用給定的值填充數組
說明
array_fill ( int $start_index , int $num , mixed $value ) : array
array_fill() 用 value 參數的值將一個數組填充 num 個條目,鍵名由 start_index 參數指定的開始。
參數
start_index
返回的數組的第一個索引值。
如果 start_index 是負數, 那麼返回的數組的第一個索引將會是 start_index ,而後面索引則從0開始。 (參見 例子)。
num
插入元素的數量。 必須大於或等於 0。
value
用來填充的值。
返回值
返回填充後的數組。
錯誤/異常
如果 num 小於零,將會拋出 E_WARNING。
更新日誌
版本 說明
5.6.0 num 現在可以是零。 之前 num 必須大於零。
範例
示例 #1 array_fill() 例子