php 学习笔记--数组篇(12)
each(array);作用:
返回当前数组的key和value,并且向前移动内部指针。
参数:
array:数组
返回值:
返回当前的元素
例子:使用each返回数组的每个值
$a = array('a' => 'red', 'b' => 'blue', 'c' => 'yellow');
while(list($key, $value) = each($a))
{
echo "$key->$value\n";
}
输出结果:
a->red
b->blue
c->yellow
end(array);
作用:
将内部指针指向最后一个元素
参数:
array:数组
返回值:
成功返回最后一个元素的值,失败返回false
例子:输出数组的最后一个参数
$a = array('a' => 'red', 'b' => 'blue', 'c' => 'yellow');
$res = end($a);
print_r($res);
输出结果:
yellow
extract(array, extract_rules, prefix)
作用:
将数组的key作为变量,数组的value作为变量的值
参数:
array:数组
extract_rules:
可选。extract() 函数将检查每个键名是否为合法的变量名,同时也检查和符号表中已存在 的变量名是否冲突。对不合法和冲突的键名的处理将根据此参数决定。
可能的值:
[*] EXTR_OVERWRITE - 默认。如果有冲突,则覆盖已有的变量。
[*] EXTR_SKIP - 如果有冲突,不覆盖已有的变量。
[*] EXTR_PREFIX_SAME - 如果有冲突,在变量名前加上前缀 prefix。
[*] EXTR_PREFIX_ALL - 给所有变量名加上前缀 prefix。
[*] EXTR_PREFIX_INVALID - 仅在不合法或数字变量名前加上前缀 prefix。
[*] EXTR_IF_EXISTS - 仅在当前符号表中已有同名变量时,覆盖它们的值。其它的都不处理。
[*] EXTR_PREFIX_IF_EXISTS - 仅在当前符号表中已有同名变量时,建立附加了前缀的变量名,其它的都不处理。
[*] EXTR_REFS - 将变量作为引用提取。导入的变量仍然引用了数组参数的值。
prefix:
可选。如果 extract_rules 参数的值是 EXTR_PREFIX_SAME、EXTR_PREFIX_ALL、EXTR_PREFIX_INVALID 或 EXTR_PREFIX_IF_EXISTS,则 prefix 是必需的。
该参数规定了前缀。前缀和数组键名之间会自动加上一个下划线。
返回值:
返回成功设置的变量数目。
例子:
1、将数组的key作为变量名
$a = array('a' => 'red', 'b' => 'blue', 'c' => 'yellow');
$res = extract($a);
echo "$a\n$b\n$c\n";
输出结果:
red
blue
yellow
2、将数组的key作为变量名并且添加前缀
$a = array('a' => 'red', 'b' => 'blue', 'c' => 'yellow');
$res = extract($a, EXTR_PREFIX_ALL, 'my');
echo "$my_a\n$my_b\n$my_c\n";
输出结果:
red
blue
yellow
in_array(value, array, strict);
作用:
查找数组中value是否存在
参数:
value:需要查找的值
array:数组
strict:可选,默认喂false,如果是true,value值需要与数组中的值的类型和值都相同
返回值:
存在返回true,失败返回false
例子:数组中是否存在数字12
$a = array('a' => 'red', 'b' => 'blue', 'c' => '12');
if(in_array(12, $a, true))
{
echo '存在';
}
else
{
echo '不存在';
}
输出结果:
不存在
key(array);
作用:
获取当前数组的内部指针的key
参数:
array:数组
返回值:
返回数组中内部指针的key
例子:
$a = array('a' => 'red', 'b' => 'blue', 'c' => '12');
$res = key($a);
print_r($res);
输出结果:a
页:
[1]