php数组常用_PHP常用数组总结
header("Content-type:text/html;charset=utf8");
//1.?array_shift:將數組開頭的元素移出數組?出棧?影響原數組
$arr=array(1,2,3,4,5,6,7,8,9);
echo?array_shift($arr);
echo?"
";
//2.?array_unshift:向數組開頭添加一個或更多個元素,所有的數值鍵名將修改為從零開始重新計數,所有的文字鍵名保持不變。??入棧,影響原數組
//array_unshift(array,var)??array:目標數組,var:變量,可以多個
array_unshift($arr,5,4,2);
print_r($arr);
echo?"
";
//3.?array_push:向數組末尾壓入一個或多個元素,影響原數組
//?array_push($arr,var)???array:目標數組,??var:?變量,可以多個
//注意:如果用?array_push()?來給數組增加一個單元,還不如用?$array[]?=?,因為這樣沒有調用函數的額外負擔。
$arr=array("green","blue","white","black");
print_r($arr);
array_push($arr,"red");
print_r($arr);
echo?"
";
//4.?array_pop:彈出數組末尾的一個元素
$arr=array(1,2,3,4,566,9);
echo?array_pop($arr);
echo?"
";
/*
入棧
array_unshift()?向數組開頭加入一個元素,如果鍵值為數字則重新排,為字符則不變
array_push()??向數組末尾加入一個元素,如果鍵值為數字則重新排,為字符則不變
出棧:
array_shift()??將數組開頭第一個彈出,
array_pop()????將數組末尾彈出
*/
/*
5.?shuffle:將數組打亂(轉換為索引數組)
shuffle:洗牌,打亂
shuffle(array),返回布爾值,影響原數組
*/
$arr=array(1,2,3,4,5,6,7,8,9);
shuffle($arr);
foreach($arr?as?$key?=>?$value){
echo?$key."=>".$value."
";
}
echo?"
";
/*
6.數組排序
sort:對數組進行排序(排序之后重新索引)
rsort:對數組進行逆向排序
asort:對數組進行排序并保持索引關系
arsort:對數組進行逆向排序并保持索引關系
natsort:用自然順序算法對數組進行排序
natcasesort:natsort忽略大小寫的版本
ksort:對數組按照鍵名進行排序
krsort:對數組按照鍵名逆向排序
usort:使用用戶自定義的比較函數對數組的值進行排序
uasort:使用用戶自定義的比較函數對數組的值進行排序并保持索引關系
uksort:使用自定義的比較函數對數組的鍵名進行排序
*/
$arr=array(2,4,51,24,1,124,15535,14214,122);
$arr2=array('name'=>'xiaozhang','age'=>12,'height'=>'178','weight'=>'60kg');
ksort($arr);
print_r($arr);
echo?"
";
/*
7.???array_flip();交換鍵和值,如果同一個值出現了多次,則最后一個鍵名將作為它的值,所有其它的都丟失了。
*/
echo?"翻轉鍵值";
$arr=array(1,2,3,55,55,55,535);
$arr2=array_flip($arr);
print_r($arr);
print_r($arr2);
echo?"
";
/*
8.??array_rand:隨機從數組中抽取一個或多個元素的鍵
array_rand($array,num),$array:目標數組,num:取出個數;
notice:?num大于1的時候返回一個隨機鍵的數組,否則返回一個隨機鍵名
*/
$arr=array(1,2,3,4,5,6,'lev'=>'a','sda'=>366);
print_r($arr);
$arr2=array_rand($arr,2);
print_r($arr2);
echo?"
";
/*
9.??array_replace:使用后面的數組中元素替換第一個數組中的元素
使用后面數組元素的值替換第一個?array?數組的值。如果一個鍵存在于第一個數組同時也存在于第二個數組,它的值將被第二個數組中的值替換。
如果一個鍵存在于第二個數組,但是不存在于第一個數組,則會在第一個數組中創建這個元素。如果一個鍵僅存在于第一個數組,它將保持不變。
如果傳遞了多個替換數組,它們將被按順序依次處理,后面的數組將覆蓋之前的值。
*/
$arrYuan=array(
'name'=>'xiaoming',
'age'=>16,
'height'=>170,
'weight'=>'67kg',
'run'=>20
);
$arrTi=array(
'zuoyouming'=>'i?like?run',
'like'=>'football',
'eat'=>'ice?cream',
'name'=>'xiaohong'
);
$arrNew=array_replace($arrYuan,?$arrTi);
print_r($arrNew);
echo?"
";
/*
10.??array_chunk(),把數組分割為新的數組塊。其中每個數組的單元數目由?size?參數決定。最后一個數組的單元數目可能會少幾個。
array_chunk(array,size)??array:目標數組,?size:?分割大小
*/
$arr=array('name'=>'Mr.li','family'=>'li','son'=>2,'menber'=>'5');
$arr2=array_chunk($arr,2);
foreach($arr2[1]?as?$key=>?$value?){
echo?$key."=>".$value."
";
}
echo?"
";
/*
11.array_slice()?數組中根據條件取出一段值,并返回,返回數組中的選定部分。
array_slice(array,start,length,preserve)?array:目標數組,start:開始位置,??length:長度?可以為負值,??preserve:是否保留鍵名
不影響原數組
*/
$arr=array('green','blue','red','black','double');
$arr2=array_slice($arr,2);
print_r($arr);
print_r($arr2);
echo?'
';
/*
12.?array_splice()?刪除數組中某段值并將其返回,(取出數組中某段值,影響原數組)
array_splice(array,start,length,array)???array:目標數組,??start:開始位置,?length:長度?可以為負值,?array:可選參數,規定帶有要插入原始數組中元素的數組。如果只有一個元素,則可以設置為字符串,不需要設置為數組
*/
$arr=array('green','blue','red','black','double');
$arr2=array_splice($arr,2);
print_r($arr);
print_r($arr2);
echo?'
';
/*
13.?array_reverse()?函數以相反的元素順序返回數組。函數將原數組中的元素順序翻轉,創建新的數組并返回。
如果第二個參數指定為?true,則元素的鍵名保持不變,否則鍵名將丟失。
注意:array_flip()是將鍵值翻轉,而array_reverse()是將元素順序翻轉(倒序)
*/
$arr=array('color'=>'green','width'=>'138px','height'=>'50px','order'=>'DESC');
$arr2=array_reverse($arr,true);
print_r($arr);
print_r($arr2);
echo?"
";
/*
14.?array_unique(array)函數移除數組中的重復的值,并返回結果數組。當幾個數組元素的值相等時,只保留第一個元素,其他的元素被刪除。返回的數組中鍵名不變。
*/
$a=array("a"=>"red","b"=>"green","c"=>"red");
print_r(array_unique($a));
總結
以上是生活随笔為你收集整理的php数组常用_PHP常用数组总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 菜鸟教程android布局,Androi
- 下一篇: 行列转换的帖子mysql_[转载]mys