如何在 PHP 中打印或回显数组索引


How to print or echo the array index of in PHP

我正在尝试完成我的作业,这是现在要做的最后一件事。

我知道如果我想打印整个数组,我可以使用foreach和许多不同的方法来打印整个数组

foreach($v as $k=>$variable_name) { echo "<p> This is index of $k. value is $variable_name <br/></p>";}

但是,如果我只想单独打印每个索引怎么办?

我想在每个表单下执行错误消息,这就是为什么我希望它们中的每一个分开。

我尝试了$v[0],但没有任何出现。

我错过了什么技巧或什么吗?

array_keys() 将以数组形式打印索引。

print_r(array_keys($arr));

如果你在谈论一个关联数组,你需要直接获取索引:

例:

$array = array ('test' => 'value1', 'test2' => 'value2');   
echo $array['test']; // value1

您可以执行 print_r($array) 以查看格式良好的数组结构:

<pre>
<?php print_r($array);?>
</pre>

相反,您正在做的是通过其数字索引获取值,例如

$array = array('test','test2','test3');
echo $array[0];  // test

进一步说明,您可以使用 array_key_exists() 事先检查密钥是否存在:

var_dump(array_key_exists('test2',$array));  // (bool) TRUE

如果您使用的是foreach循环,那么您可能正在使用关联数组(即 $v['inputName'] ) 因此,使用 $v[0] 不起作用,因为索引不是由数字定义的 - 它们是由字母定义的。您可以使用foreach循环将所有值关联到编号索引,然后像这样使用它。

$x = array();
foreach($v as $key=>$value) {
   $x[count($x)] = $key;
}
echo $x[0];

在这种情况下,$x[0]会起作用

您可以使用

php array_keys函数来获取所有密钥。如果它的关联数组,

$array = array("color" => array("blue", "red", "green"),
               "size"  => array("small", "medium", "large"));
print_r(array_keys($array));

输出将为:

Array
(
    [0] => color
    [1] => size
)

其他方式是:

if(is_array($v){
    foreach($v as $k=>$value) { 
         echo "<br/>". $k ;  // $k is the key 
    }
}
我相信

你正在寻找这个:http://php.net/manual/en/function.array-keys.php

尝试(从上面的页面):

<?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));
?>

使用print_r函数打印数组:

print_r($array)