Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从数组_键获取值_Php - Fatal编程技术网

Php 从数组_键获取值

Php 从数组_键获取值,php,Php,也许是个简单的问题,但我想不出来。。 我尝试将数组中的值放入变量中,但似乎不起作用 $array=array(0=>100,“颜色”=>“红色”) 打印(数组键($array)) 产出: Array ( [0] => 0 [1] => color ) 那我为什么不能说: 打印(数组键($array[1]) 因此它将输出:color 如何将color放入变量中 *更新:不幸的是,我在PHP5.3中工作 打印(数组键($array)[1]) 不要工作。因为$array[

也许是个简单的问题,但我想不出来。。 我尝试将数组中的值放入变量中,但似乎不起作用

$array=array(0=>100,“颜色”=>“红色”)

打印(数组键($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等上创建一个示例,其中第二个示例的代码失败?