Сделать из строки массик
Добрый день у меня есть массив в php, следующего вида вида
Array ( [event-training] => training [time] => Array ( [0] => 11 [1] => 16 ) ) Я декодером из него получаю строку в js(всё передаётся успешно, интересует именно как сделать массив в jquery): {"event-training":"training","time":["11","16"]} Мне нужен массив из этого, я пробовал так: success: function(results){ var arr = jQuery.map(results, function(el) { return el; }); } но такой способ выдал следующую ошибку: Uncaught TypeError: Cannot use 'in' operator to search for '47' in {"event-training":"training","time":["11","16"]} Другие способы тоже не помогли. Как эту строку распарсить так. Что бы массив в js получился такой же. и например я мог вызвать arr.event-training или arr['event-training'] (как будет правильнее сделать). |
Цитата:
|
Я не знаю как сделать так что бы в js можно было сделать массив.
т.е. что бы можно было вызвать arr['event-training'] и например arr['time'][0]. сейчас это строка. |
Цитата:
var str='{"event-training":"training","time":["11","16"]}'; var obj=JSON.parse(str); alert(obj['event-training']); alert(obj['time'][0]); |
спасибо большое, помогло)
|
Цитата:
|
я в принципе задачу решил, но тем не менее, мне заинтересовало ваше решения, я возвращаю данные с помощью использования json_encode, вроде как он в массив преобразует, как тогда преобразовать его в массив правильно в php?
|
Verbal, никак не пойму я вопрос твой... :(
|
вот что пишет laimas
Цитата:
|
Цитата:
var a=[ "Вася", "Петя", "Лена" ]; var str=JSON.stringify(a); alert(str); Цитата:
Главное соблюдать формат json. |
понятно спасибо, т.е. в принципе в jquery код особо меньше не станет, точнее вообще останется столько же строк) зато в php радуется) значит ваш совет был намного удачнее видимо)
|
Цитата:
["training", 11, 16] и при этом элементы этого массива известны всегда, то все просто: $a = array( 'event-training' => 'training', 'time' => array(11, 16) ); //получаем массив по известным ключам $a = array_merge([$a['event-training']], $a['time']); //смотрим что получилось print_r($a); Если ключи могут быть произвольными, но при этом известна структура массива, то можно обращаться к его элементам "анонимно". Если массив имеет несколько таких вложенных массивов, то получить массив индексных массивов будет удобно функцией array_map(). |
Часовой пояс GMT +3, время: 01:40. |