В настоящее время я изучаю Php. Я видел различные типы массивов (многомерные), но я никогда не видел никого, что ниже, полученный из результата ldap_search.php Как получить значение ключа из этого странного размерного массива
Вот результат ldap_search массив:
Array(
[count] => 1[0] => Array(
[objectclass] => Array(
[count] => 2[0] => sudorole[1] => top
) [0] => objectclass[sudohost] => Array(
[count] => 1[0] => abcd
) [1] => sudohost[sudocommand] => Array(
[count] => 1[0] => ALL
) [2] => sudocommand[description] => Array(
[count] => 1[0] => defg
) [3] => description[sudooption] => Array(
[count] => 1[0] => !authenticate
) [4] => sudooption[sudouser] => Array(
[count] => 5[0] => john[1] => james[2] => william[3] => robo[4] => chris
) [5] => sudouser[cn] => Array(
[count] => 1[0] => ffffff
) [6] => cn[count] => 7[dn] => cn = bbbbb,ou = test,dc = myproj, dc = com
)
)
На самом деле моя задача состоит в том, чтобы Findout 'dn'
значение из массива выше.
Я могу получить значение определенного ключа из обычного многомерного массива с использованием некоторой рекурсивной функции. Но как получить значение ключа из массива выше. Используя какую-то рекурсивную функцию? Извините, если его немой вопрос, но я действительно не понимаю, как это сделать.
Кстати, я попытался с помощью кода ниже, но чувствовал, какая-то логика не является правильным для моего массива
<?php
// Find the value of a Key
function seekKey($haystack, $needle){
foreach($haystack as $key => $value){
if($key == $needle){
$output = $value;
}elseif(is_array($value)){
$output = seekKey($value, $needle);
}
}
return $output;
}
?>
Где мой код? –
@ b0s3 i обновленный выше в моем сообщении – user3815806