: This article describes how to generate a curl command line in php. For more information about PHP tutorials, see. This example describes how php generates curl command lines. We will share this with you for your reference. The details are as follows:
Example:
Curl "http: // localhost/other/serverInfo. php? Dd = ddd "-H" Host: localhost "-H" Connection: keep-alive "-H" Cache-Control: max-age = 0 "-H" Accept: text/html, application/xhtml + xml, application/xml; q = 0.9, image/webp, */*; q = 0.8 "-H" User-Agent: mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.132 Safari/537.36 "-H" DNT: 1 "-H" Accept-Encoding: deflate, sdch "-H" Accept-Language: zh-CN, zh; q = 0.8, en; q = 0.6 "-H" Cookie: name = richie; email = richie@qq.com"
The code is as follows:
function getCurlCommand(){ try { if (php_sapi_name() == 'error cli'){ throw new Exception("cli"); } $curlCommand = 'curl '; $postData = $getData = ''; if($_GET) { $gets = http_build_query($_GET); $getData .= strpos($curlCommand, '?') ? '&' . $gets : '?' . $gets; } if ($_SERVER['REQUEST_METHOD'] == 'POST' ) { $posts = http_build_query($_POST); $postData = ' -d "' . $posts . '"'; } $path = isset($_SERVER['SCRIPT_NAME']) ? $_SERVER['SCRIPT_NAME'] : $_SERVER['PHP_SELF']; $curlCommand .= '"' . "http://{$_SERVER['HTTP_HOST']}" . $path . $getData . '"'; if ($postData) { $curlCommand .= $postData; } $headers = array(); if (function_exists('getallheaders')) { $headers = getallheaders(); } else { foreach ($_SERVER as $name => $value) { if (substr($name, 0, 5) == 'HTTP_') { $headers[str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', substr($name, 5)))))] = $value; } } } foreach ($headers as $key => $value) { if($key == 'Accept-Encoding') $value = str_replace('gzip, ','',$value); $curlCommand .= ' -H "' . $key . ':' . $value . '"'; } return $curlCommand; } catch (Exception $e) { return $e->getMessage(); }}echo getCurlCommand();
I hope this article will help you with php programming.
The above describes how to generate the curl Command line in php, including the Exception content, and hope to help friends who are interested in the PHP Tutorial.