是否可以从 PHP 的对象中获取 cURL 命令?我的意思是,做这个:
$ch = curl_init('http://'.$host . $url);
//...
$response = curl_exec($ch);
看起来像这样:
curl -X POST -d http://www.google.com/
这可能吗?有技巧或原生方法吗?
最佳答案
无法从 PHP 库 cURL
中获取命令行等效项(选项)来执行工具 curl
。
工具和 PHP 库都使用 libcurl
来执行客户端 URL 传输,这是一个 C 库。但仅此而已。对于 cURL
中可用的大多数 curl
选项,您很可能拥有 PHP 等效项,但是,这不是规则。
我不认为您只是想使用 curl
从您的应用程序发出请求,如果您愿意,您会使用 PHP 库。也就是说,没有简单的方法可以得到你想要的。可能您需要将命令构建为字符串。像这样:
function getCurlCommand($url, $method = 'GET', array $params = null /* , ... */ )
{
$cmd = 'curl';
$params = [];
if ($method !== 'GET') {
$params[] = '-X ' . $method;
}
if ($data !== null) {
$params[] = '-d ' . http_build_query($data);
}
// ...
return $cmd . ' ' . implode(' ', $params) . ' ' . $url;
}
关于php - 从 PHP 对象获取 cURL 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32640428/