ホームページ  >  記事  >  バックエンド開発  >  データをインターフェースとして返す PHP に関連する問題

データをインターフェースとして返す PHP に関連する問題

WBOY
WBOYオリジナル
2016-06-13 12:09:291585ブラウズ

データをインターフェイスとして返す 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}"




-----解決策のアイデア---------- ----- ------
JSON_FORCE_OBJECT (整数)
非連想配列の出力を配列ではなくクラス (オブジェクト) にします。配列が空で、受信側がクラス (オブジェクト) を必要とする場合に特に便利です。 PHP 5.3.0 以降で有効になります。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。