-1

我正在尝试执行 array_search 来查找关联的值对

我有一个数组,称为$saved_data它包含

Array () {
  Client_Information_1 => James
  Client_Information_2 => Doe
  ....
         }

每次调用时,我都需要返回值(第一次调用 -> James .. 第二次调用 -> Doe .. 等)。问题是它没有将值对返回给我。针包含索引 "Client_Information_1" 。

我的解决方案:

function recursive_array_search($saved_forms, $needle)
{
   foreach($saved_forms as $key => $value)
   {
      if ( $saved_forms[$key] === $needle )

         return $key;
   }
   return false;
}

我的循环中的函数调用:

   $return_field = recursive_array_search($saved_data,$needle);
4

2 回答 2

1

$key 是您要搜索的内容, $value 是您要返回的内容(它们在该索引处取值)

所以 if 语句应该是这样的:

if ( $key === $needle ) {
     return $value;
}
于 2013-05-30T06:24:01.687 回答
0

由于您的函数根本不是递归的或做任何其他特殊的事情,这将做同样的事情就好了:

$return_field = isset($saved_data[$needle]) ? $saved_data[$needle] : false;
于 2013-05-30T06:29:44.753 回答