array_keys函数,array key

http://www.itjxue.com  2023-01-06 07:47  来源:未知  点击次数: 

php如何调用函数

PHP函数调用与Java/C/C++是一样的额,通过函数名(参数列表)就可以了,

举个栗子:

图中,有两处函数调用,一开始的session_start()是调用的PHP函数,validate_user($username, $password)是用户自定义函数,同样的方式调用。

PHP面试题2--常用的数组函数

一,数组操作的基本函数

1. 数组的键名与值

? ? array_values($arr);? 获得数组的值

? ? array_keys($arr); 获得数组的键名

? ? array_flip($arr); 数组的值与键名互换(如果有重复前面的会被后面的覆盖)

? ? in_array("apple",$arr); 在数组中检索apple

? ? array_search("apple",$arr); 在数组中检索apple,如果存在返回键名

? ? array_key_exists("apple",$arr); 检索给定的键名是否存在数组中

? ? isset($arr["apple"]); 检索给定的键名是否存在数组中

????array_unique() 删除数组中的重复值

2. 数组的内部指针

? ? current($arr); 返回数组中的当前单元

? ? pos($arr); 返回数组中的当前单元

? ? key($arr); 返回数组中的当前单元的键名

? ? prev($arr); 将数组中的内部指针倒回一位

? ? next($arr); 将数组中的内部指针向前移动一位

? ? end($arr);? 将数组中的内部指针指向最后一单元

? ? reset($arr); 将数组中的内部指针指向第一单元

? ? each($arr); 将返回数组当前元素的一个键/值的构造数组,并使数组指针向前移动一位

? ? list($key,$value) = each($arr); 获得数组当前元素的键名和值

3. 数组和变量之间的转换

? ? extract(array,extract_rules,prefix); 函数从数组中将变量导入到当前符号表。该函数使用数组键名作为变量名,使用数组键值作为变量值。针对数组中的每个元素,将在当前符号表中创建对应的一个变量。

? ? compact(var1,var2...); 创建一个包含变量名和它们的值的数组。任何没有变量名与之对应的字符串都被略过。

二,数组的分段和填充

1. 数组的分段

? ? array_slice(array,start,length,preserve); 返回数组中的选定部分。如果数组中有字符串键名,返回的数组将保留键名。

? ? array_splice(array1,start,length,array2); 从数组中移除选定的元素,并用新元素取代它。函数返回被移除元素的数组,如果函数没有移除任何元素(length=0),则替代数组将从start参数的位置插入。不保留替代数组的键名。

2. 数组的分割

? ? array_chunk(array,size,preserve_keys); 把一个数组分割为新的数组块。

3. 数组的填充

? ? array_pad(array,size,value); 将指定数量的带有指定值的元素插入到数组。如果将size参数设置为负数,该函数会在原始数组之前插入新的元素。如果size参数小于原始数组的长度,该函数不会删除任何元素。

三,数组与栈

????array_push(array,value1,value2...); 向数组尾部插入一个或多个元素。即使数组有字符串键名,添加的元素将是数字键名。

????array_pop(array); 删除数组的最后一个元素。返回值是数组的最后一个值,即,被删除的元素值。如果数组为空,或者不是一个数组,将返回NULL。

四,数组和队列

? ? array_shift(array); 用于删除数组中的第一个元素,并返回被删除的元素。如果键名是数字,所有的元素都将获得新的键名,从0开始,并以1递增。

? ? array_unshift(array,value1,value2,value3...); 用于向数组插入新元素,新数组的值将被插入到数组的开头。数值键名将从0开始,以1递增。字符串键名将保持不变。

五,回调函数

????array_walk(array,myfunction,parameter...); 将数组中的每个元素应用到 用户自定义函数。在函数中,数组的键名和键值是参数。可以通过把用户自定义函数的第一个参数指定为引用:$value,来改变数组元素的值。

????array_map(myfunction,array1,array2,array3...); 函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新的值的数组。myfunction可以为null

????array array_filter ( array $array [, callable $callback [, int $flag = 0 ]] ); 用回调函数过滤数组中的元素。该函数把输入数组中的每个键值传给回调函数。如果回调函数返回true,则把输入数组中的当前键值返回给结果数组,数组键名保持不变。

????array_reduce(array,myfunction,initial); 函数发送数组中的值到用户自定义函数,并返回一个字符串。如果数组是空的或者初始值未传递,该函数返回null。initial为可选,规定发送到函数处理的第一个值。

六,数组的计算

1. 数组元素的求和

????array_sum(array); 返回数组中的所有值的和

2. 数组的合并

????array_merge(array1,array2,array3...); 用于把一个或多个数组合并成一个数组。如果两个或更多个数组有相同的键名。则最后的数组会覆盖其他数组。如果向函数输入了一个数组,且键名是整数,则该函数会返回带有整数键名的新数组,其键名以0开始进行重新索引。

????array_merge_recursive(array1,array2,array3...); 用于把一个或多个数组合并为一个数组,该函数与array_merge()函数之间的不同是在处理两个或多个数组元素有相同的键名的情况下,array_merge_recursive()不会进行键名覆盖,而是将多个相同键名的值递归组成一个数组。如果您仅仅向 array_merge_recursive() 函数输入一个数组,结果与 array_merge() 相同。

3. 数组的差集

????array_diff(array1,array2,array3...); 函数用于比较两个(或更多个)数组的值,并返回差集。该函数比较两个(或更多个)数组的值(key=value中的value),并返回一个差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2或array3等等)中的值。

????array_diff_assoc(array1,array2,array3...); 函数用于比较两个(或更多个)数组的键名和键值,并返回差集。该函数比较两个(或更多个)数组的键名和键值,并返回一个差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2 或 array3 等等)中的键名和键值。

4. 数组的并集

array_intersect(array1,array2,array3...); 函数用于比较两个(或更多个)数组的键值,并返回交集。该函数比较两个(或更多个)数组的键值,返回一个交集数组,该数组包括了所有在被比较的数组(array1)中,同时也在任何其他参数数组(array2 或 array3 等等)中的键值。

array_intersect_assoc(array1,array2,array3...); 函数用于比较两个(或更多个)数组的键名和键值,并返回交集。该函数比较两个(或更多个)数组的键名和键值,并返回一个交集数组,该数组包括了所有在被比较的数组(array1)中,同时也在任何其他参数数组(array2 或 array3 等等)中的键名和键值。

七,数值的排序

array_multisort():? 对多个数组或多维数组进行排序

sort(): 以升序对数组排序

rsort(): 以降序对数组排序

asort(): 根据值,以升序对关联数组进行排序

ksort(): 根据键,以升序对关联数组进行排序

arsort(): 根据值,以降序对关联数组进行排序

krsort(): 根据键,以降序对关联数组进行排序

资料参考:

$array1=array("1"=>"和","何","2"=>"&"); 定义一个上面这样的数组 在php中 使用array_keys()函数 能否返

建议你去下一本PHP的手册

数据由键名和键值组成 array_key()是返回数组中的所有键名

他有三个参数选择

语法: array_keys(array,value,strict)

array: 必需。规定输入的数组。

value: 可选。指定值的索引(键)。

strict: 可选。与 value 参数一起使用。可能的值:1. true - 根据类型返回带有指定值的键名. 2. false - 默认值。不依赖类型。

例:

?php

$a=array(10,20,30,"10");

print_r(array_keys($a,"10",true));

?

结果:

Array ( [0] = 3)

希望对你有帮助,推荐一论坛:

用自己的语言说出php中数组的常用函数和用法?

array_filter : 过滤数组中的无效元素,可以使用回调函数过滤

array_map : 使用回调函数依次处理所有元素

implode: 将一维数组转为特定符号隔开的字符串,

explode:? 将特定符号隔开的字符串转为一维数组

sort /ksort: 将数组进行升序排序

array_unique: 将数组元素去重

array_values:? 取数组的值,重新组成新数组

array_pop: 取数组末尾元素并删除(队列)

array_push:将一个元素插入数组末尾(队列)

array_sum:统计数组元素的和

array_column:将二维数组中的指定KEY取出组成一个一维数组

网页链接

PHP如何读取数组的序号

使用一个函数就行 array_keys这个函数,直接提取了序号

用foreach循环,将key值装进一个新的数组,或者读取你需要的那个

php 获取数组键名和键值

array_keys、array_values两个函数专门执行这一的功能~~~

例如:

?php

$array = array("size" = "XL", "color" = "gold");

print_r(array_values($array));

?

会输出:

Array

(

[0] = XL

[1] = gold

)

再例如:

?php

$array = array(0 = 100, "color" = "red");

print_r(array_keys($array));

$array = array("blue", "red", "green", "blue", "blue");

print_r(array_keys($array, "blue"));

$array = array("color" = array("blue", "red", "green"),

"size" = array("small", "medium", "large"));

print_r(array_keys($array));

?

以上例程会输出:

Array

(

[0] = 0

[1] = color

)

Array

(

[0] = 0

[1] = 3

[2] = 4

)

Array

(

[0] = color

[1] = size

)

(责任编辑:IT教学网)

更多

推荐linux文章