Конвертировать массив в массив JSON с помощью PHP

0

У меня есть PHP-массив, как показано ниже:

 Array
(
    [0] => stdClass Object
        (
            [id] => 1
            [area] => Arappalayam
        )

    [1] => stdClass Object
        (
            [id] => 2
            [area] => Kalavasal
        )

)

Теперь мне нужно преобразовать этот массив в массив Json, как показано ниже:

    $local_source = [
    {
    id: 1,
    area: "Arappalayam"
    }, {
    id: 2,
    area: "Kalavasal"
    }
];

Я попытался использовать код ниже для преобразования json-массива в php

$availableArea = array_slice($areas[0],0);
return json_encode($availableArea);

Но это не работает, никаких идей>?

Результат получился как [{"id": "1", "area": "Arappalayam"}, {"id": "2", область: "Kalavasal"}]; но я хочу [{id: 1, area: "Arappalayam"}, {id: 2, area: "Kalavasal"}];

  • 0
    Возможный дубликат: stackoverflow.com/questions/2122233/…
  • 0
    Результат получился как [{"id": "1", "area": "Arappalayam"}, {"id": "2", area: "Kalavasal"}]; но я хочу [{id: 1, area: "Arappalayam"}, {id: 2, area: "Kalavasal"}];
Показать ещё 1 комментарий
Теги:
arrays

4 ответа

1

Вам не нужно использовать array_splice(). Просто используйте:

json_encode($myArray);
0

Вы можете следовать приведенному ниже примеру PHP

$area = array('0' => array('id' => "1",'area' => 'Arappalayam'),
        '1' => array('id' => "2",'area' => 'Kalavasal')
        );

//callback function to do conversion
function convert($value){

  //convert only ID into integer 
  $value['id'] = intval($value['id']);

  return $value;
}   

$area = array_map('convert',$area); 
echo json_encode($area);
0

просто используйте json_encode

$local_source = json_encode($array);

проверить документы http://pk1.php.net/json_encode

и при декодировании его обратно в php-массив

$array = json_decode($local_source,true);
0

1) Ваш "id":"1" но не "id":1 - это потому, что ваше значение в PHP - это строки, а не int. Преобразование их с помощью метода intval() будет иметь другой результат.

2) Нет. Вы не можете генерировать id: вместо "id": потому что ключи цитируются в стандартной спецификации JSON. Кроме того, в JSON могут быть зарезервированные слова Javascript.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню