Intereting Posts
MAMP / PHP.INI: параметр date.timezone в phpinfo () показывает «нет значения», даже если значение установлено в php.ini php driver mongodb, никогда не загружался CodeIgniter 3: номер ошибки 2014 Команды не синхронизированы; вы не можете запустить эту команду сейчас Imagemagick exec и конвертировать Как сохранить имя файла в базе данных, с другой информацией при загрузке изображения на сервер с помощью PHP? Преобразование String в массив в JavaScript Как я могу использовать xdebug для отладки только одного виртуального хоста? Как сделать успешную регистрацию, скопировать содержимое одного столбца таблицы в другое? PDO Недопустимый номер параметра – параметры в комментариях Могу ли я перенаправить на внутреннюю ссылку, используя php? Является ли мой IP-адрес в моей базе данных, если так найти временную метку Ошибка Lumen при использовании миграции мастеров как я могу проверить все элементы массива одинаковые? Почему я получаю массив объектов SimpleXMLElement здесь? Инструмент поможет мне получить все css и javascript, связанные с тегом HTML

Возьмите значение массива, если имеется определенный ключ с PHP

У меня есть массив, который выглядит примерно так:

Array ( [100] => Array ( [room_id] => 100 [name] => Town Center ) [110] => Array ( [room_id] => 110 [name] => Coffee Shop [pin_id] => 7146 [pin_x] => 570 [pin_y] => 150 ) ) 

Мне было интересно, есть ли способ получить конкретное значение, если бы был ключ «pin_id». Так, например:

 Array ( [100] => Array ( [room_id] => 100 [name] => Town Center <-- No "pin_id" so I DON'T need this value ) [110] => Array ( [room_id] => 110 [name] => Coffee Shop <-- I want to OBTAIN this value [pin_id] => 7146 <-- Since the "pin_id" key is here [pin_x] => 570 [pin_y] => 150 ) ) 

Я пробовал использовать foreach, но мне сложно. Я все еще очень новичок в массивах и не очень знаком с терминологией / функциями.

Простое использование функции PHP array_key_exists

 <?php $search_array = array('pin_id' => 1, 'second' => 4); if (array_key_exists('pin_id', $search_array)) { echo "The 'pin_id' element is in the array"; } ?> 

* * РЕДАКТИРОВАНИЕ После прочтения вам может потребоваться пройти цикл foreach, поскольку вы используете многомерный массив

 foreach($array as $arr) { if(array_key_exists('pin_id', $arr)) { echo "The 'pin_id' element is in the array"; } } 
 foreach ($your_big_array as $arr) { if ($arr['pin_id'] == 'some_value') $i_need_this = $arr['name']; } 
 function search_key( $array, $key ) { $results = array(); if ( is_array( $array ) ) { if ( isset( $array[$key] ) && $array[$key] == $key ) $results[] = $array; foreach ( $array as $subarray ) $results = array_merge( $results, tm_search_key_value( $subarray, $key ) ); } return $results; } 

ПРИМЕНЕНИЕ:

search_key ($ array, 'pin_id');

Поиск определенного ключа из многократного, он будет возвращать массив этого конкретного ключа.