array range ( mixed $low , mixed $high [, number $step ] )
创建一个连续的数组

range('a','z');
foreach (range(0, 12) as $number) {
echo $number;
}
// array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)

bool shuffle ( array &$array )
对数组进行随机排序

<?php
$numbers = range(1, 20);
shuffle($numbers);
foreach ($numbers as $number) {
echo "$number ";
}
?> 

array each ( array &$array )
返回一个当前数组指针所指向的数组元素信息,该返回数组包含4个元素,其中下标为0和key的键的值对应指针所对应的数组元素的键,1和value的键对应的值为当前指针所指向数组元素的值,同时将数组指针向下移动一位。可以使用reset()函数来使其指针重置

<?php
$fruit = array('a' => 'apple', 'b' => 'banana', 'c' => 'cranberry');reset($fruit);
while (list($key, $val) = each($fruit)) {
echo "$key => $val\n";
}
?> 

mixed current ( array &$array )
返回当前数组指针所指的元素,但并不移动数组指针。如果该数组时一个空数组或者数组指针超过的数组中的最后一个元素,返回false。(注意判断是否为false使请小心,因为如果指针所在元素值为0或者false,也可能导致返回的结果为false,可以使用"==="来判定)。

mixed prev ( array &$array )
将数组指针向前移动一个位置,当指针无法向前移动时,该方法将返回false。

mixed next ( array &$array )
将数组指针向后移动一位,并返回其元素值。

mixed end ( array &$array )
将数组指针移动到数组中的最后一个元素,并将其元素值返回,如果数组为空,将返回false。

mixed reset ( array &$array )
重置元素指针到第一个元素位置处,如果元素为空,将返回false。

mixed key ( array &$array )
返回当前数组指针所在元素的键,如果为空数组或指针指向了数组最大元素后面的元素,将返回null。

bool sort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
将数组中的元素从小到大排序(排序区分大小写,大写字母将排在小写字母前面.而且该函数会将删除原有的键名而不仅是重新排序)
$sort_flags 参数:
SORT_REGULAR 正常格式排序,为默认排序方式
SORT_NUMERIC 将元素按照数字进行排序
SORT_STRING 将元素按照字符串进行排序
排序成功返回true,否则返回false

bool asort ( array &array [, int sort_flags] )
对数组元素的值进行升序排序,并保持键的关联。如果成功则返回 TRUE,失败则返回 FALSE。sort_flags与sort函数相同

bool arsort ( array &array [, int sort_flags] )
对数组元素的值进行降序排序,并保持键的关联。如果成功则返回 TRUE,失败则返回 FALSE。sort_flags与sort函数相同

bool ksort ( array &array [, int sort_flags] )
按照键名对数组进行升序排序,并保留对应的键值对应。如果成功则返回 TRUE,失败则返回 FALSE。sort_flags与sort函数相同

bool krsort ( array &array [, int sort_flags] )
按照键名对数组进行降序排序,并保留对应的键值对应。如果成功则返回 TRUE,失败则返回 FALSE。sort_flags与sort函数相同

bool usort ( array &$array , callback $cmp_function )
对数组进行用户自定义的函数cmp_function来进行排序。比较函数必须在第一个参数被认为小于,等于或大于第二个参数时分别返回一个小于,等于或大于零的整数。
本函数为 array 中的单元赋予新的键名。这将删除原有的键名而不仅是重新排序。

bool uasort ( array &array, callback cmp_function )

bool uksort ( array &array, callback cmp_function )

array array_reverse ( array $array [, bool $preserve_keys = false ] )
对数组进行逆向排序,如果$preserve_keys为ture,则保留原来键名。

int array_push ( array &array, mixed var [, mixed ...] )
将一个或多个元素推送到数组末尾,数组长度也会相应进行变化。注: 如果用 array_push() 来给数组增加一个单元,还不如用 $array[] = ,因为这样没有调用函数的额外负担。 该函数将返回一个添加元素后的新函数。

mixed array_pop ( array &$array )
将数组元素的最后一个元素删除,并返回该元素,如果元素为空,则返回null。

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

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

bool array_walk ( array &$array , callback $funcname [, mixed $userdata ] )
对数组中的每个元素调用用户自定义函数。典型情况下 funcname 接受两个参数。array 参数的值作为第一个,键名作为第二个。如果提供了可选参数 userdata,将被作为第三个参数传递给 callback funcname。
注: 如果 funcname 需要直接作用于数组中的值,则给 funcname 的第一个参数指定为引用。这样任何对这些单元的改变也将会改变原始数组本身。

bool array_walk_recursive ( array &input, callback funcname [, mixed userdata] )
将用户自定义函数 funcname 应用到 array 数组中的每个单元。本函数会递归到更深层的数组中去。典型情况下 funcname 接受两个参数。input 参数的值作为第一个,键名作为第二个。如果提供了可选参数 userdata,将被作为第三个参数传递给 callback funcname。 如果成功则返回 TRUE,失败则返回 FALSE

array array_map ( callback callback, array arr1 [, array ...] )
返回一个数组,该数组包含了 arr1 中的所有单元经过 callback 作用过之后的单元。callback 接受的参数数目应该和传递给 array_map() 函数的数组数目一致。

int count ( mixed var [, int mode] )或者别名sizeof()
计算数组元素个数。如果可选的 mode 参数设为 COUNT_RECURSIVE(或 1),count() 将递归地对数组计数。对计算多维数组的所有单元尤其有用。mode 的默认值是 0。count() 识别不了无限递归。

array array_count_values ( array input )
返回一个数组,该数组用 input 数组中的值作为键名,该值在 input 数组中出现的次数作为值。

array array_values ( array input )
返回 input 数组中所有的值并给其建立数字索引。

array array_keys ( array input [, mixed search_value [, bool strict]] )
返回 input 数组中的数字或者字符串的键名。

bool array_key_exists ( mixed key, array search )
array_key_exists() 在给定的 key 存在于数组中时返回 TRUE。key 可以是任何能作为数组索引的值。array_key_exists() 也可用于对象。

bool in_array ( mixed needle, array haystack [, bool strict] )
在 haystack 中搜索 needle,如果找到则返回 TRUE,否则返回 FALSE。
如果第三个参数 strict 的值为 TRUE 则 in_array() 函数还会检查 needle 的类型是否和 haystack 中的相同。 如果 needle 是字符串,则比较是区分大小写的。 在 PHP 版本 4.2.0 之前,needle 不允许是一个数组。

mixed array_search ( mixed needle, array haystack [, bool strict] )
在 haystack 中搜索 needle 参数并在找到的情况下返回键名,否则返回 FALSE。
如果可选的第三个参数 strict 为 TRUE,则 array_search() 还将在 haystack 中检查 needle 的类型。
如果 needle 在 haystack 中出现不止一次,则返回第一个匹配的键。要返回所有匹配值的键,应该用 array_keys() 加上可选参数 search_value 来代替。

int extract ( array var_array [, int extract_type [, string prefix]] )
本函数用来将变量从数组中导入到当前的符号表中。接受结合数组 var_array 作为参数并将键名当作变量名,值作为变量的值。对每个键/值对都会在当前的符号表中建立变量,并受到 extract_type 和 prefix 参数的影响。

array compact ( mixed varname [, mixed ...] )
compact() 接受可变的参数数目。每个参数可以是一个包括变量名的字符串或者是一个包含变量名的数组,该数组中还可以包含其它单元内容为变量名的数组, compact() 可以递归处理。
对每个参数,compact() 在当前的符号表中查找该变量名并将它添加到输出的数组中,变量名成为键名而变量的内容成为该键的值。简单说,它做的事和 extract() 正好相反。返回将所有变量添加进去后的数组。

array array_chunk ( array input, int size [, bool preserve_keys] )
将一个数组分割成多个数组,其中每个数组的单元数目由 size 决定。最后一个数组的单元数目可能会少几个。得到的数组是一个多维数组中的单元,其索引从零开始。
将可选参数 preserve_keys 设为 TRUE,可以使 PHP 保留输入数组中原来的键名。如果你指定了 FALSE,那每个结果数组将用从零开始的新数字索引。默认值是 FALSE。

array array_combine ( array keys, array values )
返回一个 array,用来自 keys 数组的值作为键名,来自 values 数组的值作为相应的值。
如果两个数组的单元数不同或者数组为空时返回 FALSE。、

这是将一个数组作为大数组的键,另外一个数组作为大数值的元素内容。

 $a1=array("OS", "WebServer", "DataBase", "Language");$a2=array("Linux", "Apache", "MySQL", "PHP"); print_r(array_combine($a1, $a2));echo '<br>';
print_r(array_combine($a2, $a1));echo '<br>';

array array_filter ( array input [, callback callback] )
array_filter() 依次将 input 数组中的每个值传递到 callback 函数。如果 callback 函数返回 TRUE,则 input 数组的当前值会被包含在返回的结果数组中。数组的键名保留不变。

这是一个筛选函数,

$arr=array(1,2,3,4,5,-6,7,7,8,8,-9,9,10,11,-12);$arr1=array_filter($arr, "myfun");//这里有两个参数,一个数组的,一个是即将创建的函数function myfun($n){//函数里面 有一个参数if($n>0)//这个参数的意义是代表数组中的值return false;elsereturn true;}echo '<pre>';
print_r($arr1);
echo '</pre>';

array_merge()
将一个或多个数组的单元合并起来,一个数组中的值附加在前一个数组的后面。返回作为结果的数组。 
如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值。然而,如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面。 
如果只给了一个数组并且该数组是数字索引的,则键名会以连续方式重新索引。

将两个数组结合成一个数组。

 $a1=array("OS", "WebServer", "DataBase", "Language",1,3,4,5,6,78);$a2=array("Linux", "Apache", "MySQL", "PHP",5,78); $a3=array_merge($a1,$a2);print_r($a3);echo '<br>';

转载于:https://www.cnblogs.com/zhengweizhao/p/6413164.html

PHP常用的数组函数相关推荐

  1. php常用的数组函数及功能,PHP 常用数组函数 (1)

    PHP 常用数组函数 (1) 1,array_fill(index,number,value) 用值填充数组 参数说明: index: 被返回数组的第一个索引值 number: 规定要插入的元素的个数 ...

  2. php常用操作数组函数,PHP自带的几个实用的数组函数

    PHP自带的几个实用的数组函数 php之所以被认为是快速开发的好工具,有一个原因就是他内置了大量的实用函数,今天我们介绍几个PHP自带的数组函数.在开发时可以使用这些函数,不仅可以提高编程的效率,还可 ...

  3. php常用操作数组函数,PHP常见数组函数用法小结

    本文实例讲述了PHP常见数组函数用法.分享给大家供大家参考,具体如下: 1.array array_merge(array $array1 [, array  $array2 [, $array]]) ...

  4. 常用PHP数组函数总结

    1.array_values()  以索引数组的形式返回数组的中所有元素的值 array_keys()  以索引数组的形式返回数组的中所有元素的值 2.in_array()   检查数组中是否存在某值 ...

  5. php end array_value,PHP常用处理数组函数

    一.数组的一些关于键名和值的基础操作函数 1.获取数组所有的键或值:array_keys() array_values() $array=['a'=>'A','b'=>'B',4,&quo ...

  6. php preserve keys,PHP常用的数组函数

    array range ( mixed $low , mixed $high [, number $step ] ) 创建一个连续的数组 range('a','z'); foreach (range( ...

  7. 【技术分享】PHP常用的数组函数

    数组中元素指针的移动 next:向后移动,指向下一个元素 prev:向前移动,指向前一个元素 end:指向最后一个元素 reset:复位,重新指向第一个元素 键.值的相关操作 key:获取数组当前元素 ...

  8. 用php数组做一个表格,一个非常好用的PHP数组函数

    该函数非常有用,在PHP 5.5中可直接调用. 有如下二维数组,如要抽取每个子数组中的特定项. // Array representing a possible record set returned ...

  9. php数组实例,php常用数组函数实例小结

    本文实例总结了php常用数组函数.分享给大家供大家参考,具体如下: 1. array array_merge(array $array1 [, array $array2 [, $array]]) 函 ...

最新文章

  1. 【机器视觉案例】(5) AI视觉,远程手势控制虚拟计算器,附python完整代码
  2. matlab截图放不下,[转载]【MATLAB】MATLAB的自带数据及可生成数据的函数——图片形式...
  3. MySQL 规范及优化
  4. mysql数据库学习(一)--基础
  5. Web后端学习笔记 Flask(11)Local线程隔离对象
  6. 大数据如何应用于食品追溯管理
  7. 解决问题--DatabaseMetaData的getTables()返回所有数据库的表信息
  8. 动态 Echarts 温湿度示意图 背景可以随温度变化
  9. 诺基亚n1平板电脑刷机教程_Z Launcher详细使用教程_诺基亚 N1_平板电脑新闻-中关村在线...
  10. day19 .NET项目DLL反编译未授权访问配置调试报错
  11. Algorithms-3.2 Binary Search Trees 二叉查找树
  12. Data Whale第20期组队学习 Pandas学习—文本数据
  13. padding不会撑开盒子的情况
  14. I-Deas TMG 培训资料 (1)
  15. JQuery Mobile试试水
  16. 4500m a8 amd_amd a8 4500m等同什么intel
  17. 从后台拿到webshell
  18. windows 64使用nasm
  19. MGRE网络的chap认证--ppp认证--tunnel 隧道综合实验
  20. 契约锁集成近20种人事软件,助力HR网上签署“入转调离”文件

热门文章

  1. 【Python】学习笔记7-异常处理try。。except .. as e ....else
  2. 【MySQL】navicat for mysql 10.1.7注册码
  3. Sql Server 邮件日志 操作
  4. 在centos7中安装MySQL5.7
  5. AJPFX实例集合嵌套之ArrayList嵌套ArrayList
  6. .net core 微服务之API网关 开源中间件 Ocelot 笔记
  7. 迈克菲实验室:仅42%的网络安全专业人士使用共享威胁情报
  8. 前端学习 -- HtmlCss -- 框架集
  9. 《深入浅出iPhone/iPad开发(第2版)》——组件可以触发特定事件
  10. JaveWeb中实现分页的总结