Преобразовать 2 массива в JSON

solar25

Всем привет, прошу помощи с преобразованием двух массивов вида:
массив $kn
( [0] => 05:40:000000:7744 [1] => 05:40:000004:2044 [2] => 05:40:000014:227 [3] => 05:40:000020:4130 [4] => 05:40:000024:10531 [5] => 05:40:000024:11051 [6] => 05:40:000024:11341 [7] => 05:40:000024:11342 [8] => 05:40:000024:11348 [9] => 05:40:000024:11351)
и массив $address
( [0] => г Махачкала, линия А.Акушинского пр-кт 10-я, д. 362 [1] => Республика Дагестан, г. Махачкала, сдт. Юпитер, уч-к. уч., д. 362 [2] => Республика Дагестан, г Махачкала, с Шамхал-Термен, уч 362, в жилом МКР №2 [3] => Республика Дагестан, г Махачкала, мкр Аэродрома «Досааф», уч 362 [4] => Россия, Республика Дагестан, г. Махачкала, Кировский район, пос. Семендер, ул.Темирязева, 362 [5] => Россия, Республика Дагестан, г. Махачкала, п. Семендер, ул. им. Тимирязева, 49 [6] => Республика Дагестан, г Махачкала, пгт Семендер, МКР-1, участок №362 [7] => Республика Дагестан, г Махачкала, пгт Семендер, МКР-1, участок №362 [8] => Республика Дагестан, г Махачкала, пгт Семендер, МКР-1, участок №362 [9] => Республика Дагестан, г Махачкала, пгт Семендер, МКР-1, участок №362)

Мне нужен результат в json вида:
{«items»: [{«cadNum»:»05:40:000000:7744″,»address»:» г Махачкала, линия А.Акушинского пр-кт 10-я, д. 36″}, {«cadNum»:»05:40:000004:2044″,»address»:»Республика Дагестан, г Махачкала, с Шамхал-Термен, уч 362, в жилом МКР №2″}…]}

Я делаю например так

PHP:
  1. $result = array_combine($kn,$address);
  2. echo (json_encode($result));

и иначе пытался, но не знаю, как к массивам добавить ключи cadNum и address и получить нужный JSON.

 

ADSoft

Или в цикле собираете новый массив, или с помощью array_map

 

Drunkenmunky

PHP:
  1. $result = array(‘cadNum’ => $kn, ‘address’ => $address);
  2. echo (json_encode($result));
 

solar25

Спасибо. На выходе все равно не то получается: в json сначала номера перечисляются, потом адреса, а надо, чтобы они парами шли…
а получается вот:

Код (Text):
  1. {«cadNum»:[«05:40:000000:7744″,»05:40:000004:2044″,»05:40:000014:227″,»05:40:000020:4130″,»05:40:000024:10531″,»05:40:000024:11051″,»05:40:000024:11341″,»05:40:000024:11342″,»05:40:000024:11348″,»05:40:000024:11351″,»05:40:000024:11359″,»05:40:000024:11370″,»05:40:000024:12618″,»05:40:000024:13566″,»05:40:000024:16023″,»05:40:000024:517″,»05:40:000024:7321″,»05:40:000024:7322″,»05:40:000024:7564″,»05:40:000024:8051″,»05:40:000024:8545″,»05:40:000024:8546″,»05:40:000024:8547″,»05:40:000024:8548″,»05:40:000024:8549″,»05:40:000024:8550″,»05:40:000024:8551″,»05:40:000024:8552″,»05:40:000024:8567″,»05:40:000024:8568″,»05:40:000024:8592″,»05:40:000024:8593″,»05:40:000024:9031″,»05:40:000024:9401″,»05:40:000024:9554″,»05:40:000025:1093″,»05:40:000025:2289″,»05:40:000025:5729″,»05:40:000025:6417″,»05:40:000028:11105″,»05:40:000030:1061″,»05:40:000030:1131″,»05:40:000030:1197″,»05:40:000030:1247″,»05:40:000030:1248″,»05:40:000031:9384″,»05:40:000031:9790″,»05:40:000032:2416″,»05:40:000032:3008″,»05:40:000037:3091″,»05:40:000037:5577″,»05:40:000061:1617″,»05:40:000061:4621″,»05:40:000070:646″,»05:40:000071:531″,»05:40:000074:1501″,»05:40:000074:417″,»05:40:000075:1296″,»05:40:000075:427″,»05:40:000077:2659″,»05:40:000077:412″,»05:40:000077:624″,»05:40:000081:2849″,»05:40:000081:2919″,»05:40:000090:1595″,»05:40:000090:2674″,»05:50:000069:2667″],»address»:[«u0433 u041cu0430u0445u0430u0447u043au0430u043bu0430, u043bu0438u043du0438u044f u0410.u0410u043au0443u0448u0438u043du0441u043au043eu0433u043e u043fu0440-u043au0442 10-u044f, u0434. 362″,»u0420u0435u0441u043fu0443u0431u043bu0438u043au0430 u0414u0430u0433u0435u0441u0442u0430u043d, u0433. u041cu0430u0445u0430u0447u043au0430u043bu0430, u0441u0434u0442. u042eu043fu0438u0442u0435u0440, u0443u0447-u043a. u0443u0447., u0434. 362»,»u0420u0435u0441u043fu0443u0431u043bu0438u043au0430 u0414u0430u0433u0435u0441u0442u0430u043d, u0433 u041cu0430u0445u0430u0447u043au0430u043bu0430, u0
 

Drunkenmunky

Приведите исходные массивы в читаемый вид с помощью var_export(), и используйте bbcode
И приведите пример того массива, который из них должен получиться.

 

solar25

Код (Text):
  1. //первый массив $kn
  2. array ( 0 => ’05:40:000000:7744′, 1 => ’05:40:000004:2044′,)
  3. //второй массив $address
  4. array ( 0 => ‘г Махачкала, линия А.Акушинского пр-кт 10-я, д. 362’, 1 => ‘Республика Дагестан, г. Махачкала, сдт. Юпитер, уч-к. уч., д. 362’,)
  5.  
  6. //получиться должен такой
  7. array ( 0 => stdClass::__set_state(array( ‘cadNum’ => ’05:40:000000:7744′, ‘address’ => ‘г Махачкала, линия А.Акушинского пр-кт 10-я, д. 362’, )), 1 => stdClass::__set_state(array( ‘cadNum’ => ’05:40:000004:2044′, ‘address’ => ‘Республика Дагестан, г. Махачкала, сдт. Юпитер, уч-к. уч., д. 362’, )), )
 

Drunkenmunky

PHP:
  1. $new_array = array();
  2.  
  3. foreach($kn as $key => $value)
  4. {
  5.   $new_array[$key][‘cadNum’] = $value;
  6.   $new_array[$key][‘address’] = $address[$key];
  7. }
  8.  
  9. print_r($new_array);
 

solar25

Изящно! Большое спасибо Вам.

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *