ホームページ >バックエンド開発 >PHPチュートリアル >データをインターフェースとして返す PHP に関連する問題
データをインターフェイスとして返す PHP の問題
データをインターフェイスとして返す PHP の問題
データがある場合、{"status":"0","message":"u9a8cu8bc1u7801u9519u8bef","data を返す":{" a":"1"}}、データは配列 $result です。$result が空の場合、$result = array(); 出力 {"status":"0","message":"u9a8cu8bc1u7801u9519u8bef ", "data":[]}、返されるデータは角括弧です。データを中括弧に変更する方法、{"status":"0","message":"u9a8cu8bc1u7801u9519u8bef","data":{}}フォームについて?
------解決策のアイデア----------------------
通常は必要ありません。そうでない場合は、書き直す必要があります
後------解決策のアイデア----------------------
これは
echo json_encode($array);
次のように変更すると次のようになります
echo str_replace('[]', '{}', json_encode($array));
- -----解決策----------------------
JSON_FORCE_OBJECT パラメータを使用します
<?php<br /><br /><br />$a=array();<br /><br />var_dump(json_encode($a,JSON_FORCE_OBJECT));<br /><br /><br />$a=array(1,2,3);<br /><br />var_dump(json_encode($a,JSON_FORCE_OBJECT));<br /><br />$a=array("ret"=>0);<br /><br />var_dump(json_encode($a,JSON_FORCE_OBJECT));
string(2) "{}"<br />string(19) "{"0":1,"1":2,"2":3}"<br />string(9) "{"ret":0}"