使用数组中的值从另一个数组中获取值

时间:2013-09-27 12:49:48

标签: php arrays

我有这两个数组。一个数组包含颜色的名称。另一个保持其十六进制值。

$availableColors = array("white","black");
$hexColors = array("white"=>"ffffff","black"=>"000000");

我希望这会输出#ffffff ....

$hexColors[$availableColors'white'];

但这似乎对我不起作用。

3 个答案:

答案 0 :(得分:1)

首先,您的语法不正确。接下来,您的$availableColors数组定义为:

[
    [0] => "white",
    [1] => "black"
]

因此,如果你想从中获取 white ,你需要引用0的元素:

$hexColors[$availableColors[0]]

答案 1 :(得分:1)

您不需要$availableColors,您可以直接

echo "#".$hexColors['white'];

将输出#ffffff

如果您需要$availableColors来检查颜色是否允许/可用。

$color = 'white';
if(in_array($color, $availableColors) {
    echo "#".$hexColors[$color];
} else {
    die('Color not allowed');
}

答案 2 :(得分:0)

您正在通过文本键访问非关联数组;你应该这样做

echo $hexColors[$availableColors[0]];