在上一篇文章《php程式如何遍歷json數據》中為大家介紹了PHP怎麼遍歷json數據,那麼本文將繼續介紹PHP json相關內容,希望大家繼續往下看~
本文解說的內容則是PHP接收POST的JSON資料的方法。
如果大家閱讀過上一篇文章,想必對json有一定的認識,這裡就不多介紹了。
首先我要跟大家介紹三個重要的知識點:
1、php://input
:這是一個唯讀流,允許我們從請求正文中讀取原始資料。無論內容類型為何,它都會在請求的 HTTP 標頭之後傳回所有原始資料。
2、file_get_contents()
函數:PHP 中的此函數用於將檔案讀入字串。
3、json_decode()
函數:該函數接受一個 JSON 字串並將其轉換為 PHP 變量,該變數可以是數組或物件。
想必大家都知道我們可以使用$_POST[]全域變數在 PHP 腳本中接收所有發佈資料。但是當我們想要接收 JSON 字串作為發布資料時,就會顯示失敗。那麼想要接收 JSON 字串,我們就可以使用「php://input」和file_get_contents()函數來幫助我們將 JSON 資料接收為檔案並將其讀入字串。
下面我們透過具體範例來介紹:
使用json_decode()函數對 JSON 字串進行解碼。
// 从请求中获取原始数据 $json = file_get_contents('php://input'); // 将其转换为 PHP 对象 $data = json_decode($json);
第一個範例:
<?php $json = '["PHP", "HTML", "javascript"]'; $data = json_decode($json); echo $data[0];
輸出結果:
PHP
第二個範例:
<?php $json = '{ "title": "PHP", "site": "PHP中文网" }'; $data = json_decode($json); echo $data->title; echo "<br>"; echo $data->site;
輸出:
PHP PHP中文网
PHP中文網路平台有非常多的影片教學資源,歡迎大家學習《PHP影片教學》!
以上是如何使用PHP接收POST的JSON數據的詳細內容。更多資訊請關注PHP中文網其他相關文章!