在CI框架中,接收POST JSON數據是非常常見的需求。下面我們來講解一下如何實現。
首先,在你的控制器中,你需要使用以下代碼來接收POST數據:
$json = $this->input->post('json_data');
$data = json_decode($json, true);
在上面的代碼中,我們首先使用input類的post方法獲取到名為json_data的POST數據。然后,我們使用PHP內置函數json_decode()將JSON數據轉換為PHP數組,其中true參數表示將結果轉換為關聯數組。
接下來,我們可以打印出數據來查看是否接收成功??梢允褂靡韵麓a:
print_r($data);
如果輸出了預期的數據數組,說明接收POST JSON數據已經成功。
需要注意的是,如果請求頭中的Content-Type不是application/json,那么CI默認是不會自動將POST數據轉換為JSON數據。在這種情況下,你需要手動將POST數據進行轉換。例如:
$json = file_get_contents('php://input');
$data = json_decode($json, true);
通過使用php://input來獲取POST數據,并手動將數據轉換為JSON格式,即可實現接收POST JSON數據的功能。