У меня есть массив в моем json-выходе из php файла, который использует ключ 0,1,2 и т.д.
У меня возникли проблемы с доступом к ключу через javascript. Я не уверен, что проблема с использованием чисел. Все остальные данные имеют ключ текстового значения, доступ к которому я могу получить с помощью data.arrayname.key. Чтобы обойти проблему, я хотел бы установить ключ в строку с номером в конце, чтобы я мог легко ссылаться на него в javascript.
Массив нажимается каждый раз в цикле. В течение цикла я попытался
$NoOfTips++;
$jsonKey = 'Tip' + $NoOfTips;
$TBarray[$jsonKey]=$line;
array_push($TBarray);
Теоретически каждый раз, когда цикл проходит круг, NoOfTips должен увеличиваться на 1, что также изменит ключ на Tip1, Tip2 и т.д., Но, очевидно, что-то не так. Может кто-нибудь объяснить, почему ключ не настроен правильно.
благодаря
Чтобы ответить на реальную проблему - для доступа к числовому индексу в javascript вы не можете использовать точечную нотацию, вместо этого вы должны использовать скобки:
var data = { tips: { 1: "one", 2: "two" }, other: [1, { test: "tested" }] }
console.log(data.tips[1], data.other[0], data.other[1].test)
// output: one 1 tested
Для стороны php, когда вы делаете array_push
, вам нужно указать массив, на который вы array_push
, а также то, что вы нажимаете:
array_push($TBarray, $line)
например. Хотя я не уверен, что вы собираетесь туда.