栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP

跟我学习php数组常用函数-上篇

PHP 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

跟我学习php数组常用函数-上篇

对于php的初学者,也许会对它大量的函数不清楚该学习哪些。我在这列举了一些大家实际当中可能会使用到的,供您参考


  1. array_map  ( callable  $callback  , array $arr1  [, array $...  ] )

callback(回调函数),接受一个函数
函数作用:将arr1的参数顺序的传递给前面的回调函数

  • 回调函数有参时:

  • 回调函数无参时:


  1. range ( mixed $start , mixed $limit [, number $step = 1 ] )

step表示间隔值,不写默认为1

$nums = range(1, 5);
print_r($nums);$nums = range(1, 5, 2);
print_r($nums);
$array = range('a','f');
print_r($array);$array = array('a', 'f', 2);
print_r($array);

  1. array_merge ( array $array1 [, array $... ] )

array_merge() 将一个或多个数组的单元合并起来,一个数组中的值附加在前一个数组的后面。返回作为结果的数组。

如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值。然而,如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面。

如果只给了一个数组并且该数组是数字索引的,则键名会以连续方式重新索引。

$array1 = array(1, 2, 3, 4, 5);
$array2 = array(1, 2, 8, 9);
$array3 = array_merge($array1, $array2);
print_r($array3);

  1. array_merge_recursive ( array $array1 [, array $... ] ) 递归地合并一个或多个数组

如果输入的数组中有相同的字符串键名,则这些值会被合并到一个数组中去,这将递归下去,因此如果一个值本身是一个数组,本函数将按照相应的条目把它合并为另一个数组。然而,如果数组具有相同的数组键名,后一个值将不会覆盖原来的值,而是附加到后面。

会根据键名相同一层一层的将值进行合并

$ar1 = array("color" => array("favorite" => "red"), 5);
$ar2 = array(10, "color" => array("favorite" => array('a'=>"red"), "blue"));
$result = array_merge_recursive($ar1, $ar2);
print_r($result);
$ar1 = array("color" => array("favorite" => "red"), 5);
$ar2 = array(10, "color" => array("favorite" =>"red", "blue"));
$result = array_merge_recursive($ar1, $ar2);
print_r($result);

  1. array_pad ( array $input , int $pad_size , mixed $pad_value ) 给数组增加值到指定的长度,原数组不会改变


  1. array_pop ( array &$array ) 移出最后一个元素,原数组会改变

array_pop() 弹出并返回 array 数组的最后一个单元,并将数组 array 的长度减一。 如果 array 为空(或者不是数组)将返回 NULL 。 此外如果被调用不是一个数则会产生一个 Warning。


  1. array_shift() 将数组开头的单元移出数组,原数组会改变, 使用此函数后会重置(reset())array 指针。

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

  1. int array_push ( array &$array , mixed $var [, mixed $... ] )

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

  • 返回处理后数组的元素个数

  1. reset ( array &$array )将数组的内部指针指向第一个单元

  • reset() 将 array 的内部指针倒回到第一个单元并返回第一个数组单元的值。

  • 数组为空返回false

  1. end ( array &$array )

参数array,该数组是通过引用(&)传递的,因为它会被这个函数修改。 这意味着你必须传入一个真正的变量,而不是函数返回的数组,因为只有真正的变量才能以引用传递。

  • end() 将 array 的内部指针移动到最后一个单元并返回其值。

  • 数组为空返回false

对于引用传递,如果不将一个函数的返回值赋给一个变量的话,在内存中是不会真正的开辟以个单独的空间内存的。而引用传递的参数则必须需要一个有真实存在的内存的,因此,$array = back(),这样会开辟一片内存给$array变量



作者:__simple
链接:https://www.jianshu.com/p/9a7d2d784549

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/229453.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号