Я имею многомерный массив PHP, который я преобразовал в JSON, используя JSON_encode ().
Я использую drupal для тех, кто не знаком с ним, у массива drupal часто есть ключи, которые выглядят так:
$some_array['und']['0']['value']
Таким образом, мой объект JSON выглядит так:
some_array.und.0.value
Теперь проблема заключается в том, что при использовании приведенного выше синтаксиса для получения значения i следующая ошибка JS в консоли FB: «Отсутствие имени после оператора»
Также эти данные предназначены для использования с шаблоном JQuery, поэтому я alos попытался получить доступ к этим данным прямо в моем шаблоне, используя:
${field_city.und.0.value}
Ведьма, к сожалению, тоже не работала.
Как я могу исправить эту проблему? Могу ли я каким-то образом получить это предложение с JS? Или есть способ, которым у меня есть функция JSON_encode, замените все 0, скажем, «ноль»? Или даже заменить «0» при разборе строки JSON?
Предложения многого облегчают.
Помимо использования точечной нотации, вы можете использовать стандартную нотацию массива для доступа к узлам JSON:
some_array.und['0'].value
Попробуйте получить доступ к нему с помощью параметра some_array.und ["0"]. '0' не является допустимым именем для объекта javascript, поэтому его можно получить через. нотация не работает. Однако, если вы получаете доступ к нему через квадратные скобки, вы можете получить доступ к ключам с любым именем вообще.