php中 关联数组的遍历,php - 如何遍历关联数组并获取密钥?

php - 如何遍历关联数组并获取密钥?

我的关联数组:

$arr = array(

1 => "Value1",

2 => "Value2",

10 => "Value10"

);

使用以下代码,$arr填充$arr的值

foreach($arr as $v){

echo($v); // Value1, Value2, Value10

}

如何获得$arr的密钥呢?

foreach(.....){

echo($k); // 1, 2, 10

}

11个解决方案

273 votes

你可以做:

foreach ($arr as $key => $value) {

echo $key;

}

如PHP文档中所述。

codaddict answered 2019-05-19T16:23:47Z

59 votes

如果你使用array_keys(),PHP会给你一个只填充键的数组:

$keys = array_keys($arr);

foreach($keys as $key) {

echo($key);

}

或者,您可以这样做:

foreach($arr as $key => $value) {

echo($key);

}

Trevor Johns answered 2019-05-19T16:24:21Z

26 votes

没有人回答常规for循环? 有时我发现它更具可读性,更喜欢for而不是foreach

所以这里是:

$array = array('key1' => 'value1', 'key2' => 'value2');

$keys = array_keys($array);

for($i=0; $i < count($keys); ++$i) {

echo $keys[$i] . ' ' . $array[$keys[$i]] . "\n";

}

/*

prints:

key1 value1

key2 value2

*/

MuhsinFatih answered 2019-05-19T16:24:55Z

10 votes

foreach($array as $k => $v)

其中$ k是关键,$ v是值

或者,如果您只需要键,请使用array_keys()

Htbaa answered 2019-05-19T16:25:28Z

7 votes

我使用以下循环从关联数组中获取键和值

foreach ($array as $key => $value)

{

echo "

$key = $value

";

}

dmeehan answered 2019-05-19T16:25:55Z

4 votes

以下内容允许您同时获取键和值。

foreach ($arr as $key => $value)

{

echo($key);

}

Jeff Beck answered 2019-05-19T16:26:21Z

4 votes

虽然可以说不太明确,但这种方法的速度大约是3.5倍(至少在我用来测试的盒子上)

$foo = array(

1 => "Value1",

2 => "Value2",

10 => "Value10"

);

while($bar = each($foo)){

echo $bar[0] . " => " . $bar[1];

}

我想这是因为foreach在遍历它之前复制了整个数组。

nettux answered 2019-05-19T16:26:55Z

1 votes

使用$key => $val获取密钥:

$arr = array(

1 => "Value1",

2 => "Value2",

10 => "Value10",

);

foreach ($arr as $key => $val) {

print "$key\n";

}

?>

ℝaphink answered 2019-05-19T16:27:24Z

1 votes

$names = array("firstname"=>"maurice",

"lastname"=>"muteti",

"contact"=>"7844433339");

foreach ($names as $name => $value) {

echo $name." ".$value."";

}

print_r($names);

?>

maurice answered 2019-05-19T16:27:44Z

1 votes

哦,我在PHP手册中找到了它。

foreach ($array as $key => $value){

statement

}

当前元素的键将分配给每个循环上的变量$ key。

Robinicks answered 2019-05-19T16:28:19Z

0 votes

foreach($arr as $key=>$value){

echo($key); // key

}

Graviton answered 2019-05-19T16:28:38Z

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值