【发布时间】:2015-03-25 14:48:42
【问题描述】:
我有一个名为$UserProfile 的大数组,如下所示:
Array
(
[cf_classification] => Array
(
[field_id] => 10
[field_name] => classification
[customValue] => 11
[cg_user_group_id] => 0
[options] => Array
(
[11] => Array
(
[value] => Freshman
)
[12] => Array
(
[value] => Shopomore
)
[13] => Array
(
[value] => Junior
)
[14] => Array
(
[value] => Senior
)
[15] => Array
(
[value] => Masters
)
[16] => Array
(
[value] => Ph.D
)
)
)
)
现在如果你从上面的数组中看到有一个键值对如下:
[customValue] => 11
在上面的数组中还有一个内层数组options,如下:
[options] => Array
(
[11] => Array
(
[value] => Freshman
)
[12] => Array
(
[value] => Shopomore
)
[13] => Array
(
[value] => Junior
)
[14] => Array
(
[value] => Senior
)
[15] => Array
(
[value] => Masters
)
[16] => Array
(
[value] => Ph.D
)
)
我想要实现的是将 inner array 选项的键值与 outer array 中的键 [customValue] 的值进行比较,并在找到匹配时分配新变量 $education 的值。
简而言之,在上述情况下,$education 的值应该是 'Freshman',因为 11 是匹配的键和值。所以想要的输出是
$educaion = 'Freshman';
我的问题是如何通过最少的比较次数以编程方式做到这一点?
谢谢。
【问题讨论】:
标签: php arrays multidimensional-array associative-array key-value