Php 从数组_键获取值
也许是个简单的问题,但我想不出来。。 我尝试将数组中的值放入变量中,但似乎不起作用 $array=array(0=>100,“颜色”=>“红色”) 打印(数组键($array)) 产出:Php 从数组_键获取值,php,Php,也许是个简单的问题,但我想不出来。。 我尝试将数组中的值放入变量中,但似乎不起作用 $array=array(0=>100,“颜色”=>“红色”) 打印(数组键($array)) 产出: Array ( [0] => 0 [1] => color ) 那我为什么不能说: 打印(数组键($array[1]) 因此它将输出:color 如何将color放入变量中 *更新:不幸的是,我在PHP5.3中工作 打印(数组键($array)[1]) 不要工作。因为$array[
Array
(
[0] => 0
[1] => color
)
那我为什么不能说:
打印(数组键($array[1])
因此它将输出:color
如何将color
放入变量中
*更新:不幸的是,我在PHP5.3中工作
打印(数组键($array)[1])
不要工作。因为
$array[1]
是$array
的键1
。如果您使用PHP 5.4+,则可以直接执行此操作:
print_r(array_keys($array)[1]);
否则,必须先将其保存为变量:
$keys = array_keys($array);
print_r($keys[1]);
:
从PHP5.4开始,可以直接对函数或方法调用的结果进行数组解引用。在此之前,只能使用临时变量
你是说:
print_r(array_keys($array)[1]);
// -----------------------^^^ After array_keys()
由于
$array[1]
不是数组。它只有一个字符串值
array\u键
函数仅识别数组,不能识别字符串键
如果
$array[1]
有一个数组,那么它将返回一个包含键值的数组。它是一个字符串,因此,您可以echo
它:)@AmalMurali您是对的-这只是复制OP的方法。:)我觉得我们对答案的更改越少,OP就越能理解更改。@Ruub你能用第二个例子更新你的OP吗?您不能使用第一种方法,因为这需要5.4+。@Ruub您的第二段代码应该可以完美地工作,如果不能,您可能在代码中的其他地方做了错误的事情。如图所示,它工作良好。如果你复制粘贴代码,它就可以正常工作,对吗?您能否在3v4l、codepad等上创建一个示例,其中第二个示例的代码失败?