目次
回复内容:
ホームページ バックエンド開発 PHPチュートリアル ios - PHP传给app的JSON有什么要求?

ios - PHP传给app的JSON有什么要求?

Jun 06, 2016 pm 08:27 PM
ios php

我从数据库取出数据后发到web上,让APP去获取信息:

<code>$result = mysql_query("select * from his");
while ($arr = mysql_fetch_assoc($result)) {
    $json = json_encode($arr,JSON_UNESCAPED_UNICODE);
    echo $json;
}</code>
ログイン後にコピー
ログイン後にコピー

输出到界面的json为:
{"hps_userid":"1","hps_userid2":"1"}
现在app端无法获取数据是我的输出格式问题还是app那边的问题?

现在app那边的同事说需要这种格式才可以

{"No.":[{"hps_userid":"1","hps_userid2":"1"}]}

当搜索到多条数据的时候,又要怎么如何输出?

回复内容:

我从数据库取出数据后发到web上,让APP去获取信息:

<code>$result = mysql_query("select * from his");
while ($arr = mysql_fetch_assoc($result)) {
    $json = json_encode($arr,JSON_UNESCAPED_UNICODE);
    echo $json;
}</code>
ログイン後にコピー
ログイン後にコピー

输出到界面的json为:
{"hps_userid":"1","hps_userid2":"1"}
现在app端无法获取数据是我的输出格式问题还是app那边的问题?

现在app那边的同事说需要这种格式才可以

{"No.":[{"hps_userid":"1","hps_userid2":"1"}]}

当搜索到多条数据的时候,又要怎么如何输出?

“现在app那边的同事说需要这种格式才可以”,“才可以”,哈哈。。。
以前我和别人合作的时候也听到过类似的说法,然而后来我学了安卓开发。。。
妈蛋的,才发现,明明是他们解析JSON的代码不怎么会写,还怪我给的格式不对。。。

只要输出的是标准的JSON格式,信息完整,组织正确,根本不存在解析不了的问题。

<code>{"No.":[{"hps_userid":"1","hps_userid2":"1"}]}
</code>
ログイン後にコピー

这个"No"的存在并没有什么必要(只是因为他们JSON解析不太会)。
话说,“当搜索到多条数据的时候,又要怎么如何输出?"
这种问题应该一开始就考虑好,好吧?

<code>[
    {
        "hps_userid": "1",
        "hps_userid2": "1"
    },
    {
        "hps_userid": "2",
        "hps_userid2": "3"
    },
    {
        "hps_userid": "4",
        "hps_userid2": "5"
    }
]
</code>
ログイン後にコピー

取多条数据,最后都保存到一个数组里,然后把数组转成JSON,就是上面这样的了。
话说你的代码怎么会是这样。。。

<code>$result = mysql_query("select * from his");
while ($arr = mysql_fetch_assoc($result)) {
    $json = json_encode($arr,JSON_UNESCAPED_UNICODE);
    echo $json;
}
</code>
ログイン後にコピー

你知道while循环了几次吗?每次循环都echo,最后输出的是类似这样的:

<code>{"hps_userid":"1","hps_userid2":"1"}{"hps_userid":"1","hps_userid2":"1"}{"hps_userid":"1","hps_userid2":"1"}{"hps_userid":"1","hps_userid2":"1"}{"hps_userid":"1","hps_userid2":"1"}{"hps_userid":"1","hps_userid2":"1"}
</code>
ログイン後にコピー

这种连起来的就根本不是JSON字符串啊。。。
。。。。。。
如下:

<code>$result = mysql_query("select * from his");
$Temp = array();
$row = mysql_fetch_assoc($result);
while ($row) {
    $Temp[] = array("hps_userid"=>$row["hps_userid"],"hps_userid2"=>$row["hps_userid2"]);
    $row = mysql_fetch_assoc($result);
}
die(json_encode($Temp));
//或者你就听你们那个逗比APP工程师的:
//die(json_encode(array("No."=>$Temp)));
</code>
ログイン後にコピー

这里是需要循环的,所以你给你们逗比工程师的json,是需要用 [{xxx:1},{xxx:2}] 这种格式的

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

CakePHP プロジェクトの構成 CakePHP プロジェクトの構成 Sep 10, 2024 pm 05:25 PM

この章では、CakePHP の環境変数、一般設定、データベース設定、電子メール設定について理解します。

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP ルーティング CakePHP ルーティング Sep 10, 2024 pm 05:25 PM

この章では、ルーティングに関連する次のトピックを学習します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

See all articles