array_unique(array);
作用:
去除数组中重复的值,如果key不同保留第一个元素的key值
参数:
array: 数组
返回值:
返回去重后的数组
例子:去除数组中相同的value
$a = array('a' => 'red', 'b' => 'blue', 'c' => 'red'); $res = array_unique($a); print_r($res); 输出结果: Array ( [a] => red [b] => blue )
array_unshift(array, value1, value2, value3.........)
作用:
在数组的开头插入一个或者多个新元素
参数:
array:需要插入新元素的数组
value1:新元素
value2:新元素
返回值:
返回插入新元素后数组的个数
例子:向数组中插入多个元素
$a = array(0 => 'red', 'a' => 'red', 'b' => 'blue'); $res = array_unshift($a, 'name', 'age', 'purple', 'yellow'); print_r($res); //插入元素后的数组个数 print_r("\n"); print_r($a); //插入元素后的数组 输出结果: 7 Array ( [0] => name [1] => age [2] => purple [3] => yellow [4] => red [a] => red [b] => blue )
array_values(array)
作用:
返回数组中所有的值
参数:
array:数组
返回值:
返回数组中所有的值
例子:获取数组中所有的值
$a = array(0 => 'red', 'a' => 'red', 'b' => 'blue'); $res = array_values($a); print_r($res); 输出结果: Array ( [0] => red [1] => red [2] => blue )
array_walk(array, strng, parames);
作用:
使用自定义函数对数组中的key和value做相关操作
参数:
array:数组
string:自定义函数名
parames:可选,自定义的参数
返回值:
成功返回true,失败返回false
例子:修改数组的key为a的值为purple
$a = array('a' => 'yellow', 'b' => 'hello', 'c' => 'red'); function myFunction(&$value, $key, $str) { if('a' === $key) { $value = 'purple'; echo $str."\n"; } } array_walk($a, 'myFunction', '修改成功'); print_r($a); 输出结果: 修改成功 Array ( [a] => purple [b] => hello [c] => red )
array_walk_recursive(array, string, parames);
作用:
与array_walk的作用相同,不同:array_walk _recursive()可以操作数组中包涵数组
参数:
array:数组
string:自定义函数名
parames:可选,自定义的参数
返回值:
成功返回true,失败返回false
例子:修改数组中的值
$b = array('d' => 'black', 'e' => 'blue'); $a = array('a' => 'yellow', 'b' => 'hello', 'c' => 'red', $b); function myFunction(&$value, $key, $str) { if('a' === $key || 'd' === $key) { $value = 'purple'; echo $str."\n"; } } array_walk($a, 'myFunction', '修改成功'); print_r("使用array_walk\n"); print_r($a); print_r("\n"); array_walk_recursive($a, 'myFunction', 'success'); print_r("使用array_walk_recursive\n"); print_r($a); 输出结果: 修改成功 使用array_walk //只是修改了key为a的值 Array ( [a] => purple [b] => hello [c] => red [0] => Array ( [d] => black [e] => blue ) ) success success 使用array_walk_recursive //key为a和d的值都修改成功 Array ( [a] => purple [b] => hello [c] => red [0] => Array ( [d] => purple [e] => blue ) )