Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > json. Как получить скобки [] в запросе?


Автор: panda5 4.9.2012, 12:20
Было так: 

"selements":{"elementid":"0","elementtype":"4","iconid_off":"1","iconid_on":"0","iconid_unknown":"0","label":"Newelement","label_location":"0","x":"200","y":"100","url":"","iconid_disabled":"0","iconid_maintenance":"0"} 

Нужно так: 

"selements":[{"elementid":"0","elementtype":"4","iconid_off":"1","iconid_on":"0","iconid_unknown":"0","label":"Newelement","label_location":"0","x":"200","y":"100","url":"","iconid_disabled":"0","iconid_maintenance":"0"}]

Как в json-запросе получить скобки []?

Использую функцию json_encode.

Автор: Sanchezzz 4.9.2012, 12:52
покажите как составляете JSON можно попробовать на стоне сборки сделать правильный json неважно какой язык JS PHP итд..

Автор: panda5 4.9.2012, 13:35
Все работает,
Код

json_encode =
..........................
         "selements" => array(
                         array(                          
                            "selementid" => "1",                                                                                                                     
                            "elementid" => "2",                                                                                                                      
                            "elementtype" => "0",                                                                                                                    
                            "label" => "kp29",                                                                                                                       
                            "label_location" => "0",                                                                                                                 
                            "x" => "50",                                                                                                                             
                            "y" => "50",                                                                                                                             
                            "iconid_on" => "125",                                                                                                                    
                            "iconid_off" => "125",                                                                                                                   
                            "iconid_disabled" => 0,                                                                                                                  
                            "iconid_maintenance" => 0                                                                                                                
                         ),
..............................


Скобки добавляются, если массив содержит более одного элемента.
Да и с одним работает, как то)

Автор: Sanchezzz 4.9.2012, 14:33
тогда я не понимаю суть проблемы 

Код

$structure = array("selements" => array(
    
                         array(                          
                            "selementid" => "1",                                                                                                                     
                            "elementid" => "2",                                                                                                                      
                            "elementtype" => "0",                                                                                                                    
                            "label" => "kp29",                                                                                                                       
                            "label_location" => "0",                                                                                                                 
                            "x" => "50",                                                                                                                             
                            "y" => "50",                                                                                                                             
                            "iconid_on" => "125",                                                                                                                    
                            "iconid_off" => "125",                                                                                                                   
                            "iconid_disabled" => 0,                                                                                                                  
                            "iconid_maintenance" => 0                                                                                                                
                         )
                        )
        );
        
        print json_encode($structure);
//вывело как вам нужно ?
//{"selements":[{"selementid":"1","elementid":"2","elementtype":"0","label":"kp29","label_location":"0","x":"50","y":"50","iconid_on":"125","iconid_off":"125","iconid_disabled":0,"iconid_maintenance":0}]}


на всех других серверных языках также обработать можно через специальные функции  ну а если велосипедный код разбора JSON данных в массив то нужно искать ошибку в велосипеде

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)