PHP如何在键位于变量中时从数组中获取值
我在变量中存储了一个键,如下所示:PHP如何在键位于变量中时从数组中获取值,php,arrays,Php,Arrays,我在变量中存储了一个键,如下所示: $key = 4; $value = $array[$key]; 我试图获得相关值,如下所示: $key = 4; $value = $array[$key]; 但它失败了。帮助。您的代码似乎没有问题,请确保指定的键确实存在于数组中,或者该键在数组中有值,例如: 输出: Array ( [0] => 4 ) $key = 4; $value = $array[$key]; print $value; Hello There 现在:
$key = 4;
$value = $array[$key];
我试图获得相关值,如下所示:
$key = 4;
$value = $array[$key];
但它失败了。帮助。您的代码似乎没有问题,请确保指定的键确实存在于数组中,或者该键在数组中有值,例如: 输出:
Array
(
[0] => 4
)
$key = 4;
$value = $array[$key];
print $value;
Hello There
现在:
Array
(
[0] => 4
)
$key = 4;
$value = $array[$key];
print $value;
Hello There
输出:
Array
(
[0] => 4
)
$key = 4;
$value = $array[$key];
print $value;
Hello There
它应该按照你想要的方式工作
$array = array('value-0', 'value-1', 'value-2', 'value-3', 'value-4', 'value-5' /* … */);
$key = 4;
$value = $array[$key];
echo $value; // value-4
但是可能没有键为4
的元素。如果您想获取第五个项目,无论它有什么键,您可以使用:
正如其他人所说,它可能会失败,因为请求的密钥在数组中不存在。我这里有一个helper函数,它接受数组、可疑密钥,以及在密钥不存在时的默认返回
protected function _getArrayValue($array, $key, $default = null)
{
if (isset($array[$key])) return $array[$key];
return $default;
}
希望能有帮助 “失败”是什么意思?有错误吗?您确定$array[4]中有值吗?因为您的语法是正确的-请在其他地方查找问题。您是否可以添加一些详细信息,例如$array的内容?