PHP数组操作函数

array_search — 在数组中搜索给定的值,如果成功则返回相应的键名

  'blue' ,  1  =>  'red' ,  2  =>  'green' ,  3  =>  'red' );
 
  $key  =  array_search ( 'green' ,  $array );  // $key = 2;
  $key  =  array_search ( 'red' ,  $array );    // $key = 1;
?>

array_key_exists()在给定的 key 存在于数组中时返回 TRUE

  null ,  'second'  =>  4 );
 
   // returns true
   array_key_exists ( 'first' ,  $search_array );
?>

isset — 检测变量是否设置 

 

array_pop — 将数组最后一个单元弹出(出栈)

 orange,[1] => banana,[2] => apple,[3] => raspberry)
?>

array_push — 将一个或多个单元压入数组的末尾(入栈)

array_push()  将 array 当成一个栈,并将传入的变量压入 array 的末尾。array 的长度将根据入栈变量的数目增加。

 orange,[1] => banana,[2] => apple,[3] => raspberry)
?>

array_unshift — 在数组开头插入一个或多个单元

array_unshift()  将传入的单元插入到 array 数组的开头。注意单元是作为整体被插入的,因此传入单元将保持同样的顺序。所有的数值键名将修改为从零开始重新计数,所有的文字键名保持不变。

 apple,[1] => raspberry,[2] => orange,[3] => banana)
?>

array_shift — 将数组开头的单元移出数组 

array_shift()  将array 的第一个单元移出并作为结果返回,将 array 的长度减一并将所有其它单元向前移动一位。所有的数字键名将改为从零开始计数,文字键名将不变。

 banana,[1] => apple,[2] => raspberry)
?>

array_sum — 计算数组中所有值的和 

array_sum()  将数组中的所有值的和以整数或浮点数的结果返回。

  1.2 ,  "b"  =>  2.3 ,  "c"  =>  3.4 );
 
  echo  "sum= "  .  array_sum ( $b ); // sum = 6.9
?>

array_unique — 移除数组中重复的值

array_unique()  接受 array 作为输入并返回没有重复值的新数组。注意键名保留不变。 array_unique()  先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。

  "green" ,  "red" ,  "b"  =>  "green" ,  "blue" ,  "red" );
   $result  =  array_unique ( $input );
   print_r ( $result );  // Array([a] => green,[0] => red,[1] => blue)
?>

in_array — 检查数组中是否存在某个值 

如果找到指定的值则返回 TRUE,否则返回 FALSE 。in_array()是区分大小写的。

array_chunk() —  函数把数组分割为新的数组块。

其中每个数组的单元数目由 size 参数决定。最后一个数组的单元数目可能会少几个。

//把数组分割为带有两个元素的数组,并保留原始数组中的键名:
"60","Steve"=>"56","Mark"=>"31","David"=>"35");
print_r(array_chunk($age,2,true));
/*
Array ( 
    [0] => Array ( 
                    [Bill] => 60 
                    [Steve] => 56 
                 ) 
    [1] => Array ( 
                    [Mark] => 31 
                    [David] => 35 
                 ) 
       ) 
*/


//把数组分割为带有两个元素的数组,不保留原始键名
 Array ( 
                    [0] => Volvo 
                    [1] => BMW 
                 ) 
    [1] => Array ( 
                    [0] => Toyota 
                    [1] => Honda 
                 ) 
    [2] => Array ( 
                    [0] => Mercedes 
                    [1] => Opel 
                 ) 
    ) 
*/
?>

?>

array_merge() — 函数把一个或多个数组合并为一个数组。

您可以向函数输入一个或者多个数组。


//[1]索引数组合并
 red [1] => green [2] => blue [3] => yellow ) 
?>


//[2]将两个关联数组合并为一个数组:
"red","b"=>"green");
$a2=array("c"=>"blue","b"=>"yellow");
print_r(array_merge($a1,$a2));
//Array ( [a] => red [b] => yellow [c] => blue ) 
?>



//[3]仅使用一个带有整数键名的数组参数:
"red",4=>"green");
print_r(array_merge($a));
//Array ( [0] => red [1] => green ) 
?>

注释:如果两个或更多个数组元素有相同的键名,则最后的元素会覆盖其他元素。

array_merge_recursive() 函数把一个或多个数组合并为一个数组。

该函数与 array_merge() 函数的区别在于处理两个或更多个数组元素有相同的键名时。array_merge_recursive() 不会进行键名覆盖,而是将多个相同键名的值递归组成一个数组。

注释:如果您仅仅向 array_merge_recursive() 函数输入一个数组,结果与 array_merge() 相同,函数将返回带有整数键名的新数组,其键名以 0 开始进行重新索引。

"red","b"=>"green");
$a2=array("c"=>"blue","b"=>"yellow");
print_r(array_merge_recursive($a1,$a2));
//Array ( 
            [a] => red 
            [b] => Array ( 
                            [0] => green 
                            [1] => yellow 
                         ) 
            [c] => blue 
        ) 
?>

array_map() 函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新值的数组。

 1 [1] => 4 [2] => 9 [3] => 16 [4] => 25 ) 
?>

list() 函数用于在一次操作中给一组变量赋值。

把数组中的值赋给一些变量。

array_values() 函数返回一个包含给定数组中所有键值的数组,但不保留键名。

用以重置数组索引

"Bill","Age"=>"60","Country"=>"USA");
print_r(array_values($a));
//Array ( [0] => Bill [1] => 60 [2] => USA ) 
?>

array_keys() 函数返回包含数组中所有键名的一个新数组。



"XC90","BMW"=>"X5","Toyota"=>"Highlander");
print_r(array_keys($a));
//Array ( [0] => Volvo [1] => BMW [2] => Toyota ) 


//【2】如果提供了第二个参数,则只返回键值为该值的键名。

$a=array("Volvo"=>"XC90","BMW"=>"X5","Toyota"=>"Highlander");
print_r(array_keys($a,"Highlander"));
//Array ( [0] => Toyota ) 


//【3】如果 strict 参数指定为 true,则 PHP 会使用全等比较 (===) 来严格检查键值的数据类型。
$a=array(10,20,30,"10");
print_r(array_keys($a,"10",true));
//Array ( [0] => 3 ) 
?>

你可能感兴趣的:(php)