Php 将数组值用作另一个数组键

Php 将数组值用作另一个数组键,php,arrays,associative-array,Php,Arrays,Associative Array,大家好 我有一个规则数组(这是打印结果,数组可以有1到n个位置): 我在其他地方定义了另一个数组: $array_def['value1']['value2']['value3'] = array( 'fl' => 'field1', 'f2' => 'field2', ); 使用第一个数组结果,如何检查$array_def是否存在?换句话说,我需要使用平面数组值来检查多维数组是否存在对应关系;请记住,值可以在第一个数组中重复,因此使用键翻转值这不是一个选项,因为它会碰撞并删除

大家好

我有一个规则数组(这是打印结果,数组可以有1到n个位置):

我在其他地方定义了另一个数组:

$array_def['value1']['value2']['value3'] = array(
 'fl' => 'field1',
 'f2' => 'field2',
);
使用第一个数组结果,如何检查$array_def是否存在?换句话说,我需要使用平面数组值来检查多维数组是否存在对应关系;请记住,值可以在第一个数组中重复,因此使用键翻转值这不是一个选项,因为它会碰撞并删除重复的值


提前感谢。

您可以这样做:

$a = array(1=>'value1', 2=>'value2', 3=>'value3');
$array_def[$a[1]][$a[2]][$a[3]] = array(
 'fl' => 'field1',
 'f2' => 'field2',
);

我不认为有任何捷径或特殊的内置功能来做到这一点

为您找到了完美的功能。返回不仅存在,而且在多维数组中的位置

日期:2004年11月3日11:13 太多,无法复制/粘贴

然后可以在平面阵列和foreach上循环:


multi_array_search($search_value,$the_array)

这似乎与OP所寻找的正好相反。确切地说,我需要使用数组B中的值搜索数组A中的键,这将返回使用值的键,尽管这是假设$A始终有3个元素和$array_def,我的意思是,这是一个平面解决方案,不是一个动态的,但是谢谢你的努力=)
$a = array(1=>'value1', 2=>'value2', 3=>'value3');
$array_def[$a[1]][$a[2]][$a[3]] = array(
 'fl' => 'field1',
 'f2' => 'field2',
);