PHP函数
PHP函数 数组函数
## 一、排序 - ort($array [, int $sort_flags]) :正向排序,从低到高,重新索引 - sort( $array [, int $sort_flags]) :正向排序,从低到高,保留原索引关系 - sort($array [, int $sort_flags]) :逆向排序,从高到低,重新索引 - rsort($array [, int $sort_flags]) :逆向排序,从高到低,保持原索引关系 - sort($array [, int $sort_flags]) :按照键名正向排序,从低到高 - rsort($array [, int $sort_flags]) :按照键名逆向排序,从高到低 - rray_reverse($array [, bool $preserve_keys = false ]):返回一个与$arr顺序相反的新数组 - atsort( $array ):用"自然排序"算法正向排序,区分大小写,保持索引关联 - atcasesort($array ):natcasesort() 是 natsort() 函数的不区分大小写字母的版本。 - usort(&$array , callable $cmp_function) :用自定义的比较函数对数组中的值进行排序,重新索引 - asort(&$array , callable $cmp_function) :用自定义的比较函数对数组中进行排序,保留原索引 - ksort(&$array , callable $cmp_function) :用自定义的比较函数对数组中的键名进行排序 - rray_multisort (&$array [, $arg] ):对多个数组或多维数组进行排序,关联键名保持不变,数字键名被重新索引 1. SORT_REGULAR - 正常比较单元(不改变类型) 2. SORT_NUMERIC - 单元被作为数字来比较 3. SORT_STRING - 单元被作为字符串来比较 4. SORT_LOCALE_STRING - 根据当前的区域设置来把单元当作字符串比较,可以用 setlocale() 来改变。 5. SORT_NATURAL - 和 natsort() 类似对每个单元以“自然的顺序”对字符串进行排序。 PHP 5.4.0 中新增的。 6. SORT_FLAG_CASE - 能与 SORT_STRING 或 SORT_NATURAL 合并(OR 位运算),不区分大小写排序字符串。 ## 二、key和value - key ( &$array ) :返回数组中所有的键名组成的新数组。 但它不会移动指针。 - array_key_exists( $key , $search ) :检查给定的键名或索引是否存在于数组中,也可用于对象 - array_keys($array [,$search_value]) :返回数组中所有的键名,如果指定值则只返回该值的键名 -rray_values ( array $input ) :返回 input 数组中所有的值并给其建立数字索引 - array_count_values ( array $input ) :统计数组中所有的值出现的次数 - array_sum ( array $array ) :计算数组中所有值的和 - array_product( array $array ) :计算数组中所有值的乘积 - array_flip ( array $trans ) :交换数组中的键和值,同一个值出现多次,只取最后一个。 - count ( mixed $var [, int $mode = COUNT_NORMAL ] ):计算数组中的单元数目或对象中的属性个数 - array_search ( mixed $needle , array $haystack) :在数组中搜索给定的值,成功则返回相应的键名 ## 三、合并&创建数组 - array_merge ( array $array1 [, array $... ] ) :合并一个或多个数组 - array_merge_recursive ( array $array1 [, array $... ] ) :递归合并一个或多个数组 - array_combine (array $keys , array $values ) :创建一个数组 - range ( mixed $start , mixed $limit [, number $step = 1 ] ) :建立一个包含指定范围单元的数组。 - compact ( mixed $varname [, mixed $... ] ) :建立一个数组,包括变量名和它们的值 - extract ( &$var_array [, int $extract_type = EXTR_OVERWRITE] ) :建立一个数组,包括变量名和它们的值 - array_change_key_case ( array $input [, int $case = CASE_LOWER ] ) :建立一个包含指定范围单元的数组。 ## 四、取值 - array_slice( $array , $offset [, $length = NULL [, bool $preserve_keys = false ]] ):从数组中取出一段 - array_rand( array $input [, int $num_req = 1 ] ):从数组中随机取出一个或多个单元 - array_splice ( &$input , $offset [, $length = 0] ):把数组中的一部分去掉,或用其它值取代 - array_chunk( array $input , int $size [, bool $preserve_keys = false ] ):将一个数组分割成多个 ## 五、加值和去值 - array_unique( array $array [, int $sort_flags = SORT_STRING ] ):移除数组中重复的值 - array_pop( &$array ):将最后一个单元移出数组 - array_shift(&$array):将开头的单元移出数组 - array_unshift ( &$array , mixed $var [, mixed $... ] ):在数组开头插入一个或多个单元 - array_push ( array &$array , mixed $var [, mixed $... ] ) :将一个或多个单元压入数组的末尾。 - array_fill_keys ( array $keys , mixed $value :用value作为值,用 keys作为键来填充一个数组。 - array_pad( array $input , int $pad_size , mixed $pad_value ):用值将数组填补到指定长度 - array_fill ( int $start_index , int $num , mixed $value ) :用 value 参数的值将一个数组填充 num 个条目,键名由 start_index 参数指定的开始。 ## 六、指针操作 - current ( array &$array ):返回数组中的当前单元 - reset ( array &$array ) :将数组的内部指针指向第一个单元 - end ( array &$array ) :将数组的内部指针指向最后一个单元 - next( array &$array ) :将数组中的内部指针向前移动一位 - prev( array &$array ) :将数组中的内部指针倒回一位 - each( array &$array ) :返回数组中当前的键/值对并将数组指针向前移动一步 ## 七、递归回调 - array_filter ( array $input [, callable $callback = "" ] ):用回调函数过滤数组中的单元 - array_map( callable $callback , array $arr1 [, array $... ] ) :将回调函数作用到给定数组的单元上 - array_reduce ( $input , callable $function ):用回调函数迭代地将数组简化为单一的值 - array_walk ( &$array , $funcname ):使用用户自定义函数对数组中的每个元素做回调处理 - array_walk_recursive ( array &$input , callable $funcname ):对数组中的每个成员递归地应用用户函数 - array_replace ( $array1 , $array2 [, array $... ] ):使用后面数组元素相同 key 的值替换 array1 数组的值 - array_replace_recursive ( $array1 , $array2 [, array $... ] ):使用传递的数组递归替换第一个数组的元素 ## 八、交集和差集 - array_diff( $array1 , $array2 ):计算数组的差集,键名不用于比较 - array_udiff( $array1 , $array2 , callable $key_compare_func ):用用户提供的回调函数做索引检查来计算数组的差集 - array_diff_assoc( array $array1 , array $array2 [, array $... ] ) - array_udiff_assoc(array $array1 , array $array2 [, array $... ], callable $key_compare_func ) - array_diff_uassoc ( array $array1 , array $array2 [, array $... ], callable $key_compare_func ) - array_udiff_uassoc ( array $array1 , array $array2 [, array $... ], callable $key_compare_func ) - array_diff_key ( array $array1 , array $array2 [, array $... ] ) - array_diff_ukey( array $array1 , array $array2 [, array $ ... ], callable $key_compare_func ) | 函数 | 键名是否用于比较 | 使用何种函数进行比较 | 返回值键名是否保留?| | ------------ | ------------ | ------------ | | array_diff() | No | 内部 | yes | | array_diff_assoc() | Yes | 内部 | yes | | array_diff_uassoc()| Yes | 用户提供的回调函数 | yes | | array_udiff() | No | 用户提供的回调函数 | yes | | array_udiff_assoc() | Yes | 用户提供的回调函数 | yes | | array_udiff_uassoc() | Yes | 用户提供的回调函数 | yes | | array_diff_key() | Yes | 内部| yes | | array_diff_ukey() | Yes | 用户提供的回调函数 | yes | - array_intersect ( $array1 , $array2 [, array $ ... ] ) :计算数组的交集,键名不用于比较 - array_uintersect ( $array1 , $array2, $key_compare_func ):用用户提供的回调函数做索引检查来计算数组的交集 - array_intersect_assoc( array $array1 , array $array2 [, array $ ... ] ) - array_intersect_assoc ( array $array1 , array $array2 [, array $... ], callable $key_compare_func ) - array_intersect_uassoc ( array $array1 , array $array2 [, array $... ], callable $key_compare_func ) - array_uintersect_uassoc ( array $array1 , array $array2 [, array $... ], callable $key_compare_func ) - array_intersect_key ( array $array1 , array $array2 [, array $... ] ) - array_intersect_ukey( array $array1 , array $array2 [, array $ ... ], callable $key_compare_func ) | 函数 | 键名是否用于比较 | 使用何种函数进行比较 | 返回值键名是否保留? | | ------------ | ------------ | ------------ | | array_intersect() | No | 内部 | Yes | | array_uintersect() | No | 用户提供的回调函数 | Yes | | array_intersect_assoc() | Yes | 内部 | Yes | | array_uintersect_assoc() | Yes | 用户提供的回调函数 | Yes | | array_intersect_uassoc() | Yes | 用户提供的回调函数 | Yes | | array_uintersect_uassoc() | Yes | 用户提供的回调函数 | Yes | | array_intersect_key() | Yes | 内部 | Yes | | array_intersect_ukey() | Yes | 用户提供的回调函数 | Yes | ## 九、其他 - shuffle($arr) :打乱(随机排列单元的顺序)一个数组。删除原有的键名,赋予新的键名 - in_array ( $needle , $haystack [, bool $strict = FALSE ] ):检查数组中是否存在某个值,区分大小写 - list ( mixed $varname [, mixed $... ] ) - array_column ( array $input , mixed $column_key [, mixed $index_key ] ):返回数组中指定的一列 - 数组和json互换 json_encode()--就是将PHP数组转换成Json。 json_decode()--就是将Json转换成PHP数组
顶部
收展
底部
[TOC]
目录
PHP函数 字符串函数
PHP函数 数组函数
PHP函数 文件目录函数
日期时间函数
MySQL函数
正则函数
数学函数
cURL 函数
XML函数
加密函数
Session函数
URL函数
Apache 函数
Bzip2 压缩与归档扩展
GNU Readline 针对命令行的扩展
网络函数
进程控制
变量与类型相关扩展函数
影响 PHP 行为的扩展
相关推荐
PHP基础
PHP设计模式
PHP算法
PHP版本