您的位置:首页 > 编程语言 > PHP开发

php中数组的拆分,合并,分解,连接操作

2016-03-08 21:55 651 查看
1:array_slice($array,start,length,true/false),返回一个新的数组

$array1start(int)length(int)true/false
目标数组开始位置从开始位置起删除的长度是否保留原有键
<?php

$array = array(1,2,3,4,5,6);
echo "<pre>";
print_r(array_slice($array,1,2,true));
echo "</pre>";
/*
Array
(
[1] => 2
[2] => 3
)*/
?>
2:array_splice($array1,start(int),length(int),$array2)

$array1start(int)length(int)$array2
目标数组开始位置从开始位置起删除的长度替换数组
从$array1的start位置开始,删除length个数组,然后将$array2从start位置开始替换,如果$array2的长度大于length那么$array1会自增长

<?php

$a1 = array("name","phone","address");
$a2 = array("张三","110","中南海");
echo "<pre>";
array_splice($a1,0,2,$a2);
print_r($a1);
echo "</pre>";
/*
Array
(
[0] => 张三
[1] => 110
[2] => 中南海
[3] => address
)*/
//===============================================================================
$a1 = array("name","phone","address");
$a2 = array("张三","110","中南海",1,2,3,4,5,6,7);
echo "<pre>";
array_splice($a1,0,2,$a2);
print_r($a1);
echo "</pre>";
/*
Array
(
[0] => 张三
[1] => 110
[2] => 中南海
[3] => 1
[4] => 2
[5] => 3
[6] => 4
[7] => 5
[8] => 6
[9] => 7
[10] => address
)*/
?>


3:array_combine($array1,$array2)

$array1$array2
做为键做为值
<?php

$a1 = array("name","phone","address");
$a2 = array("张三","110","中南海");
echo "<pre>";
print_r(array_combine($a1,$a2));
echo "</pre>";
/*
<pre>Array
(
[name] => 张三
[phone] => 110
[address] => 中南海
)
*/?>

//第一个参数作为新数组的key,第二个参数作为新数组的value;

4:array_merge()

$array1$array2....
第一个数组第二个或者更多
a:如果是数字索引数组,那么合并后的数组,数字索引会自增长。
b:如果是非数字索引数组,那么遇到相同键名的时候,后面赋值的会把前面赋值的值覆盖掉;

5:array_intersect()

获得2个或者更多数组的交集,只需要值相同就可以;

6:array_diff();

获得2个或者更多数组的不相同的值,只需要值相同就可以

7:array_push();array_pop();array_shift();array_unshift()

这四个跟as的操作一样

8:array_rand($array,num(int)),return array / value

随机从目标数组中取出num个元素

$arraynum(int)
目标数组需要随机出来的值,如果大于1个就以数组形式
9:shuffle($array) return bool

$array 目标数组

将$array随机,成功返回true,失败返回false

10:array_sum($array)return int

$array 目标数组

将目标数组求和

11range(start(int),end(int),step(int));

start(int),end(int)step(int)
开始的最小值结束的值步进制
根据用户传入的数据,生成一个数组,数组以start(int)来做开始,end(int)做结束,每一个元素相差step()
<?php
$array = range(0,30,5);
echo "<pre>";
print_r($array);
echo "</pre>";
/*
Array
(
[0] => 0
[1] => 5
[2] => 10
[3] => 15
[4] => 20
[5] => 25
[6] => 30
)*/
?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: