1.数组的键值操作函数:
$arr = array("小明" => 98, "小红" => 76, "小黑" => 66,);
array_values(input);//输出所有值value
array_keys(input);//输出所有键key
in_array(needle, haystack);//查找数组里有没有needle这个值
array_key_exists(key, search);//查找数组里有没有key这个键
array_flip(trans);//键值对互换
array_reverse(array);//把数组反转,从最后一个排到第一个
2.统计数组的元素和唯一性:
count(var);//返回数组中元素的数目。
array_count_values(input);//用于统计数组中所有值出现的次数。
array_unique(array);//删除数组中的重复值。
array_filter(input);//用回调函数过滤数组中的元素。
array_map(callback, arr1);//把数组中的每个值发送到用户自定义函数,返回新的值。例子是$v*$v。
3.数组的排序函数:
sort(array);//索引数组正序,只有数字,返回true或false,改变了原数组
rsort(array);//数组逆序
asort(array);//关联数组正序,按照值排序,键和值都有
arsort(array);//关联数组逆序
ksort(array);//关联数组正序,按照键排序,键和值都有
krsort(array);//关联数组逆序
array_multisort(arr);//对多个数组排序,可指定排列顺序
数组截取:
array_slice(array, offset);//从数组中取出部分值,offset起始数字,取几个值,原数组不变,返回取值的新数组
array_splice(input, offset);//从数组中移除部分值,原数组改变,第4个参数可以是个数组,加入原数组
数组合并:
array_merge(array1);//把两个数组合并成一个大数组,如果键名重复,后面的覆盖前面的
array_combine(keys, values);//把两个数组合并,第一个数组为键,第二个数组为值
数组分割与连接:
explode(delimiter, string);//把字符串拆分成数组,根据分隔符拆分,不改变原字符串
implode(glue, pieces);//把数组组合成字符串,加入分隔符
join();//implide()的别称
带有数据结构的数组函数:
array_pop(array);//从数组末尾删除一个值(出栈),并返回这个值,原数组删除了这个值
array_push(array, var);//向第一个参数的数组尾部添加一个或多个元素(入栈),然后返回新数组的长度。该函数等于多次调用 $array[] = $value。
array_shift(array);//删除数组中第一个元素,并返回被删除元素的值。
array_unshift(array, var);//向数组插入新元素。新数组的值将被插入到数组的开头。返回数组中元素的个数。
其他函数:
array_rand(input);//从数组中随机选出一个或多个元素,并返回。第二个参数用来确定要选出几个元素。但只能是前面的数字小,后面的数字大
shuffle(array);//把数组元素打乱重排,关联数组的键名清除!返回true或false
array_sum(array);//返回数组中所有值的和。
array_product(array);//计算并返回数组的乘积。
range(low, high);//创建一个数组,包含从 low 到 high (包含 low 和 high)之间的整数或字符。如果 high 比 low 小,则返回反序的数组。第三个参数是步长
练习:做一个字母数字混合的4位数随机验证码