PHP中键的递归数组搜索
我正在尝试执行数组搜索以查找关联的值对 我有一个名为PHP中键的递归数组搜索,php,arrays,Php,Arrays,我正在尝试执行数组搜索以查找关联的值对 我有一个名为$saved_data的数组,它包含 Array () { Client_Information_1 => James Client_Information_2 => Doe .... } 每次调用时,我都需要返回值(第一次调用->詹姆斯..第二次调用->多伊..等等)。问题是它没有将值对返回给我。指针包含索引“客户端信息1” 我的解决方案: 我的循环中的函数调用: $key是您正在搜索的内容,$va
$saved_data
的数组,它包含
Array () {
Client_Information_1 => James
Client_Information_2 => Doe
....
}
每次调用时,我都需要返回值(第一次调用->詹姆斯..第二次调用->多伊..等等)。问题是它没有将值对返回给我。指针包含索引“客户端信息1”
我的解决方案:
我的循环中的函数调用:
$key是您正在搜索的内容,$value是您想要返回的内容(它们在该索引处的值) 因此,if语句应该如下所示:
if ( $key === $needle ) {
return $value;
}
由于您的函数根本不是递归函数或执行任何其他特殊操作,因此这将很好地执行相同的操作:
$return_field = isset($saved_data[$needle]) ? $saved_data[$needle] : false;
问题是……
$saved_表单[$key]
等于$value
。你比较错了。它不会把$key还给我,它总是返回false。你的问题是什么?顺便说一下,我在这里没有看到任何递归。。。
if ( $key === $needle ) {
return $value;
}
$return_field = isset($saved_data[$needle]) ? $saved_data[$needle] : false;