來自json的php(關於json)

本文目錄一覽:

php怎麼接收json數據格式

PHP接收JSON格式的數據

在API服務中,目前流行採用json形式來交互。

給前端調用的介面輸出Json數據,這個比較簡單,只需要組織好數據,用json_encode($array) 轉化一下,前端就得到json格式的數據。

接收前端提交的json數據稍微複雜一點,原因是:PHP默認識別的數據類型是application/x-標準的數據類型。因此,對型如text/xml 或者 soap 或者 application/octet-stream 和application/json格式之類的內容無法解析,如果用$_POST數組來接收就會失敗!

此時可以使用$GLOBALS[‘HTTP_RAW_POST_DATA’] 或 file_get_contents(‘php://input’) 來獲取提交的數據

查看手冊,可以發現$GLOBALS[‘HTTP_RAW_POST_DATA’] 和 $_POST的區別:

$_POST:通過 HTTP POST 方法傳遞的變數組成的數組,是自動全局變數。

$GLOBALS[‘HTTP_RAW_POST_DATA’] :總是產生 $HTTP_RAW_POST_DATA 變數包含有原始的 POST 數據。此變數僅在碰到未識別 MIME 類型的數據時產生。$HTTP_RAW_POST_DATA 對於 enctype=”multipart/form-data” 表單數據不可用。也就是說基本上$GLOBALS[‘HTTP_RAW_POST_DATA’] 和 $_POST是一樣的。但是如果post過來的數據不是PHP能夠識別的,你可以用 $GLOBALS[‘HTTP_RAW_POST_DATA’]來接收,比如 text/xml 或者 soap 等等。

php伺服器端怎樣接收來自android的json數據.android以post方式發送

php有一個函數叫json_encode,數據從伺服器中拿過來之後,我是直接添加進array裡面來進行操作的,android認的JSONObject的格式是兩層大括弧包著的array。你將數據從資料庫中拿出來之後,組成associative array,用你的例子創建一個空array先~~$arr = array();$arr[‘test’] = ‘json’;$arr[‘mode’] = ‘single’;這樣加進一個叫$arr的數組(中文是叫這個的吧。。。orz。。。。)之後,你用另一個array再把它裝進去,操作是$arr2 = array(‘view’ = $arr);這樣我們要的那個主要的包含數據的數組$arr就有了一個名字,於是android解析的時候就可以區別了,php輸出的時候,要這樣輸出:echo json_encode($arr2);於是就ok~~~會變成一個可以解析的JSONObject哦~~~~以上全部是我個人研究經驗。。。。也許有更簡單的方法,求高手指教~~~不過我們整個一個系統裡面凡是server和android軟體交互的數據我都是這麼發過去的,表示JSONArray是更麻煩的東西,JSONObject神馬的,還是很簡單的哈~~~~~自己研究研究就出來了~~~

php怎麼接收json類型數據

PHP接收JSON格式的數據

在API服務中,目前流行採用json形式來交互。

給前端調用的介面輸出Json數據,這個比較簡單,只需要組織好數據,用json_encode($array) 轉化一下,前端就得到json格式的數據。

接收前端提交的json數據稍微複雜一點,原因是:PHP默認識別的數據類型是application/x-標準的數據類型。因此,對型如text/xml 或者 soap 或者 application/octet-stream 和application/json格式之類的內容無法解析,如果用$_POST數組來接收就會失敗!

此時可以使用$GLOBALS[‘HTTP_RAW_POST_DATA’] 或 file_get_contents(‘php://input’) 來獲取提交的數據

查看手冊,可以發現$GLOBALS[‘HTTP_RAW_POST_DATA’] 和 $_POST的區別:

$_POST:通過 HTTP POST 方法傳遞的變數組成的數組,是自動全局變數。

$GLOBALS[‘HTTP_RAW_POST_DATA’] :總是產生 $HTTP_RAW_POST_DATA 變數包含有原始的 POST 數據。此變數僅在碰到未識別 MIME 類型的數據時產生。$HTTP_RAW_POST_DATA 對於 enctype=”multipart/form-data” 表單數據不可用。也就是說基本上$GLOBALS[‘HTTP_RAW_POST_DATA’] 和 $_POST是一樣的。但是如果post過來的數據不是PHP能夠識別的,你可以用 $GLOBALS[‘HTTP_RAW_POST_DATA’]來接收,比如 text/xml 或者 soap 等等。

補充說明:PHP默認識別的數據類型是application/x-標準的數據類型。

在PHP中怎麼接收來自app的JSON數據

根據你的代碼,你是用的是POST方法。

要在PHP中整體接收POST數據,有兩種方法。

注意,要使用以下兩種方法,Content-Type不能為multipart/form-data。

方法一:

使用:

file_get_contents(‘php://input’)

其中,php://input是一個流,可以讀取沒有處理過的POST數據(即原始數據)。相較於$HTTP_RAW_POST_DATA而言,它給內存帶來的壓力較小,並且不需要特殊的php.ini設置。

方法二:

使用此方法,需要設置php.ini中的always_populate_raw_post_data值為On。

使用$HTTP_RAW_POST_DATA,包含了POST的原始數據。但這不是一個超全局變數,要在函數中使用它,必須聲明為global,或使用$GLOBALS[‘HTTP_RAW_POST_DATA’]代替。

PHP生成及獲取JSON文件的方法

本文實例講述了PHP生成及獲取JSON文件的方法。分享給大家供大家參考,具體如下:

首先定義一個數組,然後遍曆數據表,把相應的數據放到數組中,最後通過json_encode()轉化數組

json_encode()

函數的功能是將數值轉換成

JSON

數據存儲格式。

putjson.php:

?php

//

生成一個PHP數組

$data

=

array();

$data[0]

=

array(‘1′,’吳者然’,’onestopweb.cn’);

$data[1]

=

array(‘2′,’何開’,’iteye.com’);

//

把PHP數組轉成JSON字元串

$json_string

=

json_encode($data);

//

寫入文件

file_put_contents(‘test.json’,

$json_string);

?

有同名的

JSON

文件則覆蓋,沒有則創建。

生成或覆蓋的

JSON

如下:

複製代碼

代碼如下:[[“1″,”\u811A\u672C\u4E4B\u5BB6″,””],[“2″,”\u7F16\u7A0B\u5F00\u53D1″,”jb51.net”]]

然後,把

JSON

文件中的數據讀取到PHP變數中。

getjson.php:

?php

//

從文件中讀取數據到PHP變數

$json_string

=

file_get_contents(‘test.json’);

//

把JSON字元串轉成PHP數組

$data

=

json_decode($json_string,

true);

//

顯示出來看看

var_dump($data);

echo

‘brbr’;

print_r($data);

echo

‘brbr’;

echo

‘編號:’.$data[0][0].’

姓名:’.$data[0][1].’

網址:’.$data[0][2];

echo

‘br’;

echo

‘編號:’.$data[1][0].’

姓名:’.$data[1][1].’

網址:’.$data[1][2];

?

效果圖:

PS:這裡再為大家推薦幾款比較實用的json在線工具供大家參考使用:

在線JSON代碼檢驗、檢驗、美化、格式化工具:

JSON在線格式化工具:

在線XML/JSON互相轉換工具:

json代碼在線格式化/美化/壓縮/編輯/轉換工具:

C語言風格/HTML/CSS/json代碼格式化美化工具:

更多關於PHP相關內容感興趣的讀者可查看本站專題:《PHP中json格式數據操作技巧匯總》、《PHP針對XML文件操作技巧總結》、《PHP基本語法入門教程》、《PHP數組(Array)操作技巧大全》、《php字元串(string)用法總結》、《php+mysql資料庫操作入門教程》及《php常見資料庫操作技巧匯總》

希望本文所述對大家PHP程序設計有所幫助。

關於PHP 請求 json的辦法

假設get到的數據是$a = {「code」:0};

$b = json_decode($a); //$b =array(‘code’=0);

if(empty($b[‘code’])){

}

原創文章,作者:W2Q21,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/130326.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
W2Q21的頭像W2Q21
上一篇 2024-10-03 23:28
下一篇 2024-10-03 23:28

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • JSON的MD5

    在Web開發過程中,JSON(JavaScript Object Notation)是最常用的數據格式之一。MD5(Message-Digest Algorithm 5)是一種常用…

    編程 2025-04-29
  • 使用Java將JSON寫入HDFS

    本篇文章將從以下幾個方面詳細闡述Java將JSON寫入HDFS的方法: 一、HDFS簡介 首先,先來了解一下Hadoop分散式文件系統(HDFS)。HDFS是一個可擴展性高的分散式…

    編程 2025-04-29
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • 如何使用Newtonsoft datatable轉Json

    Newtonsoft DataTable 是一個基於.NET的JSON框架,也是一個用於序列化和反序列化JSON的強大工具。 在本文中,我們將學習如何使用Newtonsoft Da…

    編程 2025-04-28
  • JPRC – 輕鬆創建可讀性強的 JSON API

    本文將介紹一個全新的 JSON API 框架 JPRC,通過該框架,您可以輕鬆創建可讀性強的 JSON API,提高您的項目開發效率和代碼可維護性。接下來將從以下幾個方面對 JPR…

    編程 2025-04-27
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若伺服器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27
  • 使用Python獲取JSON並解析

    本文將介紹如何使用Python獲取JSON數據並解析相關內容。通過使用Python的第三方庫,我們可以輕鬆地處理JSON數據,包括讀取、提取和操作JSON數據。 一、獲取JSON數…

    編程 2025-04-27
  • Python存為JSON的方法及實例

    本文將從以下多個方面對Python存為JSON做詳細的闡述。 一、JSON簡介 JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,易於人閱…

    編程 2025-04-27

發表回復

登錄後才能評論