|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Feb 2015
Сообщений: 3
|
Передача массива из php в flash. Как распарсить ответ в actionscript 2?
Здравствуйте, не получается распарсить массив который был преобразован в пхп который взял контент из mysql.
Сам ответ(Массив) из php выглядит так: {friend:'user1',status:1,relationship:'0'};{friend:'user2',status:2,relationship:'Братья'};{friend:'user3',status:0,relationship:'Коллеги'} Теперь принимаю его на стороне Флеша, далее загонял в массив, но все тщетно каждый i-ый элемент являлся String-овым, так что я умудрился разбить все с дного массива в другой преобразовывая его в Object(Ну шоб из {_} получить параметры) и сохранял каждый элемент в новый массив. Проверял через typeof(); все катит OBJECT Аллилуйя, но далее пробую вытащить из него что-то но опять этот undefined -_-" Пробовал все сделать не через запрос в пхп а просто создать массив с обджектами все хорошо выводит. Кстать это все называется associative array. Все выводится как и в инете таких полно. Но именно у меня с внешним эррэйем все сложно. И еще одно: чтоб загнать все это Стринговое значение в массив я был вынужден split-ом вырезать ; (точку с запятой) ну чтоб рассматривать их как отдельные элементы. Пожалуйста помогите, буду признателен. Вот и сам код: var firstarray:Array=new Array(); var friendsarray:Array=new Array() ; var returner:LoadVars = new LoadVars(); var obj:Object=new Object(); on (release) { sendXML = new XML("&login=" + escape(login)); sendXML.sendAndLoad("data/friends.php",returner,"POST"); returner.onLoad = function(success:Boolean) { firstarray = returner.arrayfromserver.split(";"); firstarray.sortOn(["friend", "status" ]); for (i = 0; i < firstarray.length; i++) { obj=Object(firstarray[i]); friendsarray.push(obj); pole =pole+friendsarray[i].friend+" "; } }; } |
|
|||||
Все это у вас называется JSON. Формат ответа.
Ищите по форуму парсер. Я уже раза 3 кидал его в эту ветку за последние пару месяцев. |
|
|||||
Регистрация: Jan 2013
Сообщений: 322
|
это не json
|
|
|||||
Да. Согласен. Не он. А похож, чертяка
Добавлено через 18 минут С учетом того, что ФОРМАТ расположения всех знаков препинания стандартный: var sj = "{friend:'user1',status:1,relationship:'0'};{friend:'user2',status:2,relationship:'Братья'};{friend:'user3',status:0,relationship:'Коллеги'}" var ARRREZ:Array = new Array() var ARR1:Array = sj.split(";") // Режем массив по ; for ( var i=0; i<ARR1.length; i++ ){ trace( "Source Array Item String:"+ARR1[i] ) var tmp1 = ARR1[i].split("{")[1].split("}")[0].split(",") // Выкидываем {} var tmpobj = ARRREZ[ARRREZ.length] = new Object() for( var j=0; j<tmp1.length; j++){ var tmp2 = tmp1[j].split(":") if ( tmp2[1].indexOf("'") >= 0 ) tmp2[1] = tmp2[1].split("'")[1] // Выкидываем '' tmpobj[tmp2[0]] = tmp2[1] } for ( var w in tmpobj ) { trace( " "+w+" = "+tmpobj[w] ) } } trace( "\nTEST:"+ARRREZ[1].friend ) |
|
|||||
|
|
|||||
Регистрация: Feb 2015
Сообщений: 3
|
Спасибо вам большое. Вы еще и код написали. Спасибо, Ой а как здесь закрыть форум, и объявить ваш ответ как верным ответом?
|
Часовой пояс GMT +4, время: 14:03. |
|
« Предыдущая тема | Следующая тема » |
|
|