$total
是一个多维数组:
Array (
[1] => Array ( [title] => Jake [date] => date )
[2] => Array ( [title] => John [date] => date )
[3] => Array ( [title] => Julia [date] => date )
)
如何搜索[title]
值并作为结果ID给出?
如果我们搜索Julia
,则应该3
(ID为[3]
)。
感谢。
答案 0 :(得分:2)
function get_matching_key($needle, $innerkey, $haystack) {
foreach ($haystack as $key => $value ) {
if ($value[$innerkey] == $needle) {
return $key;
}
}
return NULL;
}
$key_you_want = get_matching_key("Julia", "title", $total);
答案 1 :(得分:1)
对不起我之前的回答,没注意到它是嵌套数组。您可以尝试这样做:
function recursiveArraySearch($haystack, $needle, $index = null)
{
$aIt = new RecursiveArrayIterator($haystack);
$it = new RecursiveIteratorIterator($aIt);
while($it->valid())
{
if (((isset($index) AND ($it->key() == $index)) OR (!isset($index))) AND ($it->current() == $needle)) {
return $aIt->key();
}
$it->next();
}
return false;
}
$array = array(3 => array('title' => 'Julia'));
$key = recursiveArraySearch($array, 'Julia');
echo $key;
<强>结果:强>
3
答案 2 :(得分:1)
function search_array($search,$array){
$cnt=count($array);
for($i=0;$i<$array;$i++){
if($search==$array[$i]['title']){
return $i;
}
}
}