PHP常用的数组函数

常用数组函数

  1. array_push( a r r a y , array, array,value1,$value2…)

向数组尾部插入一个或多个元素,返回值为插入的元素个数

$arr = array('value1');
array_push($arr,'value2');
print_r($arr);

//Array ( [0] => value1 [1] => value2 ) 
  1. array_unshift( a r r a y , array, array,value1,$value2…)

向数组开头插入一个或多个元素,返回值为插入的元素个数

$arr = array('one');
array_unshift($arr,'two','three');
print_r($arr);

//Array ( [0] => two [1] => three [2] => one ) 
  1. array_pop($array)

从数组栈弹出最后一个元素,返回值为删除的元素的值

$arr = array('one','two','three','four'); 
$val = array_pop($arr);
echo '删除的值:',$val;
print_r($arr);

//删除的值:four
//Array ( [0] => one [1] => two [2] => three ) 
  1. array_shift($array)

从数组中移除第一个元素,返回值为移除元素的值

$arr = array('one','two','three','four');
$val = array_shift($arr);
echo '移除的元素:',$val,'<br>';
print_r($arr);

//移除的元素:one
//Array ( [0] => two [1] => three [2] => four ) 
  1. array_filter($array,[function])

第二个参数没有时,过滤数组中的空元素(包含零);第二个参数自定义时,按照第二个自定义的函数进行过滤;下标不会发生改变

//没有第二个参数的情况
$arr = array(1,2,3,4,5,6,0,'',10);
$arr1 = array_filter($arr);
print_r($arr1);

//Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [8] => 10 ) 

//有第二个参数的情况
function even($num) {
    if($num % 2 == 0) {
        return $num;
    }
}
$arr = array(1,2,3,4,5,6,7,10);
$arr1 = array_filter($arr,even);
print_r($arr1);

//Array ( [1] => 2 [3] => 4 [5] => 6 [7] => 10 ) 
  1. array_diff( a r r a y 1 , array1, array1,array2…)

取数组的差集(比较元素的值,不比较元素的键),以第一个参数为准

$arr1 = array('a'=>1,'b'=>2,'c'=>3);
$arr2 = array('d'=>5,'e'=>6,3=>7,'g'=>2);
$new_arr = array_diff($arr1, $arr2);
$new_arr1 = array_diff($arr2,$arr1);
print_r($new_arr);
print_r($new_arr1);

//Array ( [a] => 1 [c] => 3 ) 
//Array ( [d] => 5 [e] => 6 [3] => 7 ) 
  1. array_intersect( a r r a y 1 , array1, array1,array2…)

取数组的交集(比较元素的值,不比较元素的键)

$arr1 = array('a'=>1,'b'=>2,'c'=>3);
$arr2 = array('d'=>5,'e'=>6,3=>7,'g'=>2);
$new_arr = array_intersect($arr1, $arr2);
print_r($new_arr);

//Array ( [b] => 2 ) 
  1. array_search( v a l u e , value, value,array)

数组中查找某个元素,返回查找到的位置,没有查找到返回false

$arr1 = array('a'=>1,'b'=>2,'c'=>3,5=>22);
echo array_search(2,$arr1);
echo array_search(22,$arr1);

//b
//5
  1. in_array( v a l u e , value, value,array)

判断元素是否在数组里,存在返回true,不存在返回false

$arr1 = array('a'=>1,'b'=>2,'c'=>3,5=>22);
if(in_array(2,$arr1)) {
    echo '存在';
}else {
    echo '不存在';
}

//存在
  1. implode( s e p a r a t o r , separator, separator,array)

以某个分隔符将数组拼接成字符串

$arr1 = array('Hello','are','you');
$str = implode(' ',$arr1);
echo $str;

//Hello are you
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值