2017-01-06 8 views
2

json_encodeを使用して配列をjsonに変換しています。しかし、キーが値が空白の場合、jsonは中カッコ{}を与えています。値を空にするか空白にしておきたい。json_encode関数は、PHPで配列が空の場合の中括弧{}を返します。

<?php 
$postData='<Lead> 
<General> 
<dealer></dealer></General> </Lead>'; 
$array_data = json_encode(simplexml_load_string($postData)); 
$array_data=json_decode($array_data) ; 
$dealer=$array_data->General->dealer; 
$data=array('dealer'=>$dealer); 
echo $objectJson =json_encode($data); 
?> 


response is : {"dealer":{}} 
+0

を表示宣言する回避の下のコードで再びそれを使用し、それを表示しない場合は、それをコードする前に内容を確認してください。 – Fyntasia

+1

あなたは間違った場所を探しています、 'simplexml_load_string'は' json_encode() 'が' {} 'に正しくエンコードするように空のオブジェクトを生成します:https://eval.in/710579 – jeroen

答えて

2

あなた$dealerはJSONで三元

'dealer'=>((!$dealer) ? $dealer : null) 

{}

使用と同じである空の配列で、これがあれば$dealerが空であることを意味するので、それはです:.Belowはコードです助けてください空の配列を変更するnullを割り当てるか、または

{}を割り当てます0
$data=array('dealer'=>((!$dealer) ? $dealer : null)); 

echo $objectJson =json_encode($data); 

あなたはそれだけではなく、それを

echo json_encode($data); 
関連する問題