Intereting Posts
Временная загрузка файла PHP не действительна Ресурс изображения Бесконечное соответствие подвыражений (регулярных выражений) возвращает только одно совпадение Возвращенный JSONObject всегда равен нулю. Конкатенация строк PHP PHP-алгоритм для создания всех комбинаций определенного размера из одного набора Facebook API: войдите в систему с помощью JavaScript SDK, затем проверьте состояние входа в PHP принадлежит нескольким отношениям в Laravel для нескольких баз данных Сортируйте массив, используя тот же порядок другого Как выполнить java-функции / скрипт в PHP Возможны ли множественные внешние ключи в одном поле? CodeIgniter current_url не отображает строки запроса Как отправить содержимое внешнего файла на принтер? preg_repalce соответствует частичным данным с правильным регулярным выражением Как обновить все документы в mongodb PHP Случайное проигрывание переменных сеанса только в Google Chrome & URL Rewriting

Доступ к значениям массива можно получить с помощью переменных переменных?

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

$foo['bar'] = "pie"; $fixed_name_variable = "foo['bar']"; echo $$fixed_name_variable; 

Который в пироге pie троиса. Кроме того, что он просто ничего не возвращает. Поэтому мне нужно знать, действительно ли этот подход работает или мне нужно переосмыслить его.

Просто заметил. На второй строке, должна ли строка в кавычках?

Хотя я ненавижу поощрять такое поведение, вы можете использовать eval для достижения того, что вы в ограниченной степени.

 $foo['bar'] = "pie"; $fixed_name_variable = "foo['bar']"; $a = eval("return $$fixed_name_variable;"); echo $a; //outputs "pie" 

$foo[$key_var] должен работать, если я не понял ваш вопрос?

Нет, я не думаю, что это возможно. Единственное (очевидно) возможное – использовать переменный индекс и получить доступ к $foo[$bar] .

Однако использование переменных переменных, как правило, очень плохая практика – особенно потому, что они делают отладку и автоматическую документацию / поиск переменных настолько ужасно трудными. Обычно лучше не использовать их, а вместо этого использовать массив.