インターフェースとしてデータを返すPHPの問題

WBOY
リリース: 2016-06-23 13:45:59
オリジナル
2222 人が閲覧しました

インターフェイスとしてデータを返すphpの問題
データがある場合、{"status":"0","message":"u9a8cu8bc1u7801u9519u8bef","data":{"a":"1"}},を返します。ここで、データの内部は $result です。$result が空の場合、$result = array(); 出力 {"status":"0","message":"u9a8cu8bc1u7801u9519u8bef","data":[]} が返されます。 data それは角括弧です。{"status":"0","message":"u9a8cu8bc1u7801u9519u8bef","data":{}} の形式でデータを中括弧に変更するにはどうすればよいですか?


ディスカッション(解決策)への返信

通常は必要ありません、そうでない場合は書き直す必要があります

通常は必要ありません、そうでない場合は書き直す必要があります


仕方ないです、フロント-end IOS と Android は強く押しています。この形式が必要です

戻り値は次のようになります
echo json_encode($array)
これを次のように変更します
echo str_replace('[]', '{} ', json_encode($array));

使用方法 JSON_FORCE_OBJECT パラメーターのみを使用します

<?php$a=array();var_dump(json_encode($a,JSON_FORCE_OBJECT));$a=array(1,2,3);var_dump(json_encode($a,JSON_FORCE_OBJECT));$a=array("ret"=>0);var_dump(json_encode($a,JSON_FORCE_OBJECT));
ログイン後にコピー



string(2) "{}"string(19) "{"0":1,"1":2,"2":3}"string(9) "{"ret":0}"
ログイン後にコピー



JSON_FORCE_OBJECT (整数)
非連想配列の代わりにクラス (オブジェクト) を出力させるには配列。配列が空で、受信側がクラス (オブジェクト) を必要とする場合に特に便利です。 PHP 5.3.0 以降で有効になります。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!