数组是不是除了用foreach之外就没办法得到其key了?我就问问 foreach($arr as $key=>$value){}能不能不用foreach取得$key?比如。一个函数getkey($arr[0]) 取得第一个元素的key我就问问 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 有的!array_keys()函数就是获取所有的key值!比如:$arrKeys = array_keys($arr);$arr数组的第一个key就是$arrKeys[0] 严重bs楼主这种不查手册,出来乱问的事件。出来交流,总要有点深度吧。问问题前,先看看手册。 //以下来自手册。array_keys(PHP 4 , PHP 5)array_keys -- 返回数组中所有的键名说明array array_keys ( array input [, mixed search_value])array_keys() 返回 input 数组中的数字或者字符串的键名。 如果指定了可选参数 search_value,则只返回该值的键名。否则 input 数组中的所有键名都会被返回。 array_keys(PHP 4, PHP 5)array_keys — 返回数组中所有的键名说明array array_keys ( array $input [, mixed $search_value [, bool $strict ]] )array_keys() 返回 input 数组中的数字或者字符串的键名。 如果指定了可选参数 search_value,则只返回该值的键名。否则 input 数组中的所有键名都会被返回。自 PHP 5 起,可以用 strict 参数来进行全等比较(===)。 Example #1 array_keys() 例子<?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) each(PHP 4, PHP 5)each — 返回数组中当前的键/值对并将数组指针向前移动一步 说明array each ( array &$array )返回 array 数组中当前指针位置的键/值对并向前移动数组指针。键值对被返回为四个单元的数组,键名为 0,1,key 和 value。单元 0 和 key 包含有数组单元的键名,1 和 value 包含有数据。 如果内部指针越过了数组的末端,则 each() 返回 FALSE。 Example #1 each() 例子<?php$foo = array("bob", "fred", "jussi", "jouni", "egon", "marliese");$bar = each($foo);print_r($bar);?> $bar 现在包含有如下的键/值对: Array{ [1] => bob [value] => bob [0] => 0 [key] => 0}<?php$foo = array("Robert" => "Bob", "Seppo" => "Sepi");$bar = each($foo);print_r($bar);?> $bar 现在包含有如下的键/值对: Array{ [1] => Bob [value] => Bob [0] => Robert [key] => Robert}each() 经常和 list() 结合使用来遍历数组,例如: Example #2 用 each() 遍历数组<?php$fruit = array('a' => 'apple', 'b' => 'banana', 'c' => 'cranberry');reset($fruit);while (list($key, $val) = each($fruit)) { echo "$key => $val\n";}?> 以上例程会输出:a => appleb => bananac => cranberry在执行 each() 之后,数组指针将停留在数组中的下一个单元或者当碰到数组结尾时停留在最后一个单元。如果要再用 each 遍历数组,必须使用 reset()。 Caution 因为将一个数组赋值给另一个数组时会重置原来的数组指针,因此在上边的例子中如果我们在循环内部将 $fruit 赋给了另一个变量的话将会导致无限循环。 key(PHP 4, PHP 5)key — 从关联数组中取得键名说明mixed key ( array &$array )key() 返回数组中当前单元的键名。 Example #1 key() 例子<?php$array = array( 'fruit1' => 'apple', 'fruit2' => 'orange', 'fruit3' => 'grape', 'fruit4' => 'apple', 'fruit5' => 'apple');// this cycle echoes all associative array// key where value equals "apple"while ($fruit_name = current($array)) { if ($fruit_name == 'apple') { echo key($array).'<br />'; } next($array);}?> php 数据写入txt时的问题 php 显示报错信息 怎么读不到内容呢? php!!谢谢!! php 求提取出来的一列的和值 上面那个正则表达式匹配的问题解决了 坐等大侠,Mail_mimeDecode 怎么使用,希望用过这个类的朋友指点下 这个网站还不错吧界面,就是灰了点 不能执行命令 如何在公司的框架上添加二维码 请教DOCTYPE声明在使css在ie6 ie7失效 php中的curl与C#中的HttpWebResponse
array_keys()函数就是获取所有的key值!
比如:
$arrKeys = array_keys($arr);
$arr数组的第一个key就是$arrKeys[0]
出来交流,总要有点深度吧。问问题前,先看看手册。
//以下来自手册。
array_keys
(PHP 4 , PHP 5)array_keys -- 返回数组中所有的键名
说明
array array_keys ( array input [, mixed search_value])
array_keys() 返回 input 数组中的数字或者字符串的键名。 如果指定了可选参数 search_value,则只返回该值的键名。否则 input 数组中的所有键名都会被返回。
(PHP 4, PHP 5)array_keys — 返回数组中所有的键名说明
array array_keys ( array $input [, mixed $search_value [, bool $strict ]] )
array_keys() 返回 input 数组中的数字或者字符串的键名。 如果指定了可选参数 search_value,则只返回该值的键名。否则 input 数组中的所有键名都会被返回。自 PHP 5 起,可以用 strict 参数来进行全等比较(===)。
Example #1 array_keys() 例子<?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
)
(PHP 4, PHP 5)each — 返回数组中当前的键/值对并将数组指针向前移动一步 说明
array each ( array &$array )
返回 array 数组中当前指针位置的键/值对并向前移动数组指针。键值对被返回为四个单元的数组,键名为 0,1,key 和 value。单元 0 和 key 包含有数组单元的键名,1 和 value 包含有数据。 如果内部指针越过了数组的末端,则 each() 返回 FALSE。
Example #1 each() 例子<?php
$foo = array("bob", "fred", "jussi", "jouni", "egon", "marliese");
$bar = each($foo);
print_r($bar);
?>
$bar 现在包含有如下的键/值对: Array
{
[1] => bob
[value] => bob
[0] => 0
[key] => 0
}
<?php
$foo = array("Robert" => "Bob", "Seppo" => "Sepi");
$bar = each($foo);
print_r($bar);
?>
$bar 现在包含有如下的键/值对: Array
{
[1] => Bob
[value] => Bob
[0] => Robert
[key] => Robert
}each() 经常和 list() 结合使用来遍历数组,例如: Example #2 用 each() 遍历数组<?php
$fruit = array('a' => 'apple', 'b' => 'banana', 'c' => 'cranberry');
reset($fruit);
while (list($key, $val) = each($fruit)) {
echo "$key => $val\n";
}
?>
以上例程会输出:a => apple
b => banana
c => cranberry在执行 each() 之后,数组指针将停留在数组中的下一个单元或者当碰到数组结尾时停留在最后一个单元。如果要再用 each 遍历数组,必须使用 reset()。 Caution
因为将一个数组赋值给另一个数组时会重置原来的数组指针,因此在上边的例子中如果我们在循环内部将 $fruit 赋给了另一个变量的话将会导致无限循环。
(PHP 4, PHP 5)key — 从关联数组中取得键名说明
mixed key ( array &$array )
key() 返回数组中当前单元的键名。
Example #1 key() 例子<?php
$array = array(
'fruit1' => 'apple',
'fruit2' => 'orange',
'fruit3' => 'grape',
'fruit4' => 'apple',
'fruit5' => 'apple');// this cycle echoes all associative array
// key where value equals "apple"
while ($fruit_name = current($array)) {
if ($fruit_name == 'apple') {
echo key($array).'<br />';
}
next($array);
}
?>