Curl,是一個非常常用的命令行工具,它可以用來傳輸數據。而在php中,通常我們會用到curl來向其他服務端發送請求。在這篇文章中,我們將介紹在php中如何使用curl向其他服務端發送post請求并傳遞json數據。
步驟一:安裝curl擴展
sudo apt-get install php-curl
步驟二:創建post請求頭并傳遞json數據
$url = "http://example.com/api"; // 請求地址
$data = array('name' =>'John', 'email' =>'john@example.com'); // 要提交的json數據
$ch = curl_init(); //初始化 curl
curl_setopt($ch, CURLOPT_URL, $url); //設置請求地址
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //設置是否將請求頭輸出到結果中
curl_setopt($ch, CURLOPT_POST, 1); //設置請求方法為POST
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data)); //設置提交的JSON數據
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); //設置請求頭為JSON
$response = curl_exec($ch); //執行請求
curl_close($ch); // 關閉curl
在以上代碼中,我們首先定義了請求的地址和要傳遞的json數據。接著使用curl_init()函數進行初始化。使用curl_setopt()函數來設置請求方法和需要提交的數據。最后,執行請求并關閉curl。
需要注意的是,我們在請求頭中指定了Content-Type為application/json,這是因為我們要提交的數據是json格式。