Условия обработки персональных данных

Сайт использует технические и персональные данные пользователей для получения маркетинговой и статистической информации. Условия обработки персональных данных посетителей можно ознакомиться по ссылке.

В случае Вашего не согласия с этими условиями - просим Вас покинуть данный сайт. Если Вы продолжаете находиться и использовать сайт - Вы автоматически выражаете свое согласие с условиями обработки персональных данных пользователей сайта

X

php функция list +array_keys или получение первого ключа и первого значения ассоциативного массива в одну строку

Недавно у меня произошел взрыв мозга. Это всё виноваты функции Php и анализ чужого кода. Мне встретились 3 функции:list() ,array_values() и array_keys().

Инструкция по array_keys (http://www.php.su/array_keys) Она выбирает все ключи массива … в индексированный массив от нуля и по увеличению.

Результат:
Array
(
[0] => 0
[1] => color
)

Если взять и поместить в эту функцию ассоциативный массив с одним элементом.

То результатом работы функции будет:
Array
(
[0] => media_id
)

Инструкция по list().

Пример: имеем массив, состоящий из трех элементов:

Необходимо передать эти значения элементов массива, соответственно, трем переменным $Ivanov, $Sidorov, $Petrov:

Итог- у нас 3 переменных получили свои значения. для первой это Иванов для второй соответственно Николай и тд.

Если написать — без дополнительных переменных, то получаем результат в переменной $Ivanov будет
list ($Ivanov)= $people;
$Ivanov- тоже будет иван. Тут в эту переменную присвоилось первое значение из массива.

Возьмем пустую переменную

В результате получаем, что в $myvalue сидит первый ключ ассоциативного массива.

Что можно сделать с функция array_values()? Заменям в строке выше array_keys на array_values и получаем первое значение ассоциативного массива.

Я думал, почему так сложно? Ведь можно было цикл запустить или же сместить указатель. Но это решение в одну строку.
Итог этой работы :+1 к level по Php.

Вообще-то в документации написано, что замену array_keys — можно сделать в цикле, но вот только зачем, если такая функция есть?

Комментирование закрыто