imo, самый простой, надежный и безопасный способ получения значения первой строки PHP array
- использовать функцию current — Return the current element in an array.
if (current($results)->meta_value === 'yes') {
//do something nice
}
Почему?
Проблема в том, что PHP array не является «линейным списком ячеек в ячейке памяти в нулевой последовательности. Это действительно упорядоченный hash map на других языках.
Он способен использовать any string
как key
или index
. Если вы не используете ключ при добавлении записи в массив, он использует числовой индекс, начинающийся с нуля.
Важным моментом является то, что ключи не обязательно должны быть последовательными целыми числами. Они могут быть словами (строка). то есть не Там может быть не нулевым индексом в массиве
Итак, как получить доступ к первому элементу в PHP array
, если мы не знаем, индексы, которые keys
?
PHP массив итераторы
Каждый array
имеет iterator
, связанный с ним. Итератор points
к элементу, если массив имеет элементы или не определен для пустых массивов.
Когда массив создается итератор всегда устанавливается, чтобы указать на первой записи
Общие функции для доступа к :
current - возвращает элемент, на который указывает internal pointer
в массиве
key - извлекает ключ из массива
- next - Передвинуть внутренний указатель массива из массива
reset - Установите внутренний указатель массива на его первый элемент
Примечания:
current
вернет false
, если не указывает на действительный элемент, иначе он вернет значение.
Резюме
С помощью функции current
получить доступ к массиву вы уверены, чтобы получить значение записи независимо от index
или key
на самом деле.
$ result = $ results [0]; и использовать $ result вместо $ results – Surace
'$ results [0] -> meta_value == 'yes'' – danjam
Ваш объект является ** первым ** элементом в вашем массиве. Поэтому вы можете получить к нему доступ с помощью '$ results [0]'. –