채택완료

php json 합치기

2020-05-09 (토) 22:15:49 4,315
Copy
$json = '

{

'name' : '홍길동',

'age' : '100'

}

';

 

$jsonArray[] = json_decode($json);

$jsonArray[] = array('weight' => '70');

 

echo json_encode($jsonArray);

구글에서 json 합치기를 검색했을때 나오는 소스코드대로 위의 코드를 작성했는데 

print_r 을 했을때 자꾸 이런식으로나오네요...

Array
(
    [0] => stdClass Object
        (
            [name] => 홍길동
            [age] => 100
        )

    [1] => Array
        (
            [weight] => 70
        )

)

stdClass Object 안에 weight 를 넣으려면 어떤식으로 해야되나요?

|

답변 2개 / 댓글 2개

채택된 답변
+20 포인트

$jsonArray[0]['weight'] = '70';
으로 변경하시면 됩니다만 배열 구조나 오브젝트, 자료형에 대해 알아보시면 좋을 듯 합니다.

답변에 대한 댓글 2개

그렇게 해주었을때는 "Cannot use object of type stdClass as array" 이라는 애러가 나와서 안했어요..ㅠㅠ
json_decode($json, true) 로 수정해주세요

변수명과 순서를 바꿔서 작성해보면

Copy
$myObj = '{ 'name' : '홍길동', 'age' : '100' }';

$myObj->weight = "70";


$jsonArray[] = json_decode(myObj);
echo json_encode($jsonArray);

이렇게 하시면 될 것 같습니다.

답변을 작성하려면 로그인이 필요합니다.