Собственно вопрос. Есть вот это: PHP: $error_array = array(); if($type_error == "0001"){ $error_array[] = array("result"=>0, "error"=>"Не передано уточнюючий параметр", "code"=>"0001"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0002"){ $error_array[] = array("result"=>0, "error"=>"Переданий уточнюючий параметр невідомий для системи", "code"=>"0002"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } Это ошибки при запросе. В ответ на запрос генерируется JSON. Проблема в том что в такой конструкции генерится два совершенно не связаных ответа. Соответственно json_decode выдает NULL. Посоветуйте вариант распарсинга или вариант сбивать в кучу все ответы. Спасибо --- Добавлено --- А полный код странички ошибок вот такой: PHP: class Info{ function error_info($type_error){ if($type_error == "0001"){ $error_array[] = array("result"=>0, "error"=>"Не передано уточнюючий параметр", "code"=>"0001"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0002"){ $error_array[] = array("result"=>0, "error"=>"Переданий уточнюючий параметр невідомий для системи", "code"=>"0002"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0003"){ $error_array[] = array("result"=>0, "error"=>"Параметр з переліком продуктів пустий", "code"=>"0003"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0004"){ $error_array[] = array("result"=>0, "error"=>"Параметр з продуктами містить недопустиме значення", "code"=>"0004"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0005"){ $error_array[] = array("result"=>0, "error"=>"Не передано тип поїздки", "code"=>"0005"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0006"){ $error_array[] = array("result"=>0, "error"=>"Тип поїздки невідомий для системи", "code"=>"0006"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0007"){ $error_array[] = array("result"=>0, "error"=>"Пустий параметр вартості продукту партнера", "code"=>"0007"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0008"){ $error_array[] = array("result"=>0, "error"=>"Проблема з розрахунком вартості срахового продукту", "code"=>"0008"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0009"){ $error_array[] = array("result"=>0, "error"=>"Пустий параметр Action", "code"=>"0009"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0010"){ $error_array[] = array("result"=>0, "error"=>"Невірний параметр Action", "code"=>"0010"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0011"){ $error_array[] = array("result"=>0, "error"=>"Вартість клієнтського продукту недійсна", "code"=>"0011"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0012"){ $error_array[] = array("result"=>0, "error"=>"Не вказано кількість днів", "code"=>"0012"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0013"){ $error_array[] = array("result"=>0, "error"=>"Параметр дні може приймати лише числове значення", "code"=>"0013"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0014"){ $error_array[] = array("result"=>0, "error"=>"Неможливо отримати страховий тариф", "code"=>"0014"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0015"){ $error_array[] = array("result"=>0, "error"=>"Відсутній дозвіл на страхові продукти", "code"=>"0015"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0016"){ $error_array[] = array("result"=>0, "error"=>"Немає імені клієнта", "code"=>"0016"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0017"){ $error_array[] = array("result"=>0, "error"=>"Немає прізвища клієнта", "code"=>"0017"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0018"){ $error_array[] = array("result"=>0, "error"=>"Не визначено параметр оплати", "code"=>"0018"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0019"){ $error_array[] = array("result"=>0, "error"=>"Не передано дату початку дії", "code"=>"0019"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0020"){ $error_array[] = array("result"=>0, "error"=>"Не передано електронну пошту клієнта", "code"=>"0020"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0021"){ $error_array[] = array("result"=>0, "error"=>"Помилка при створенні клієнта", "code"=>"0021"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0022"){ $error_array[] = array("result"=>0, "error"=>"Невірні дані авторизації", "code"=>"0022"); header('Content-type: application/json'); echo json_encode($error_array_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0023"){ $error_array[] = array("result"=>0, "error"=>"Проблема авторизації", "code"=>"0023"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0024"){ $error_array[] = array("result"=>0, "error"=>"Помилка при створенні нового договору продукту ID14", "code"=>"0024"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0025"){ $error_array[] = array("result"=>0, "error"=>"Даний поліс недоступний для даного партнера", "code"=>"0025"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0026"){ $error_array[] = array("result"=>0, "error"=>"Такого договору немає в системі", "code"=>"0026"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0027"){ $error_array[] = array("result"=>0, "error"=>"Не вказано статус договору", "code"=>"0027"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0028"){ $error_array[] = array("result"=>0, "error"=>"Помилка ануляції", "code"=>"0028"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0029"){ $error_array[] = array("result"=>0, "error"=>"Не вказано ID договору", "code"=>"0029"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0030"){ $error_array[] = array("result"=>0, "error"=>"Не передано коментар до дії", "code"=>"0030"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } if($type_error == "0031"){ $error_array[] = array("result"=>0, "error"=>"Не виконані умови параметру", "code"=>"0031"); header('Content-type: application/json'); echo json_encode($error_array, JSON_UNESCAPED_UNICODE); } } } $error = new Info(); --- Добавлено --- Я как бы вот выпил кофе и голова заработала. Я понимаю что это ж все в классе делается. Я понимаю что данные физически не могут попадать в единый массив. Что посоветуете изменить?
Именно так. Однако... Автор, учись в отладку аякса на клиентской стороне, и смотри, что ты ему передаешь. Хочешь передать несколько массивов - заводи массив $result, в ячейки которого, в свою очередь, пиши остальные массивы. И сериализуй именно его. При десериализации на стороне клиента получишь так же двухмерный массив.
Я разобрался уже с этим. Там дело в том что при каждом запросе в класс создается отдельный массив,а не дополняется общий. Избавился от класса и все прекрасно работает. Всем спасибо