php如何执行linux的curl指令
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php如何执行linux的curl指令相关的知识,希望对你有一定的参考价值。
在php程序里面如何执行curl指令?
希望各位大侠给个答复。
PHP 中执行系统命令有几种方式:
system():和 C 语言中的 system() 函数的用法是一样的,参数为命令行,成功则返回命令输出的最后一行,失败则返回 FALSE。
shell_exec():执行命令,然后返回命令执行后的 stdout 输出。
passthru():直接执行命令,然后将输出内容直接显示到网页上。
在这里,curl 的输出不用显示到网页上,所以 system() 可能比较合适。
注: 如果用本函数启动一个程序并希望保持在后台运行,必须确保该程序的输出被重定向到一个文件或者其它输出流去,否则 PHP 会在程序执行结束前挂起。
(2)
或exec("curl",$return);
以上具体请查阅手册.
(3)其实php5内置了对curl的支持,编译curl扩展库,修改php.ini即可.详见参考资料.
参考资料:http://hi.baidu.com/27270543/blog/item/02b229ed905cab4378f055ea.html
本回答被提问者采纳 参考技术B curl 不是即时的输入输出的命令,php 有运行时间限制, curl 运行会导致 curl 运行时间不够而被杀掉的。php 有运行 linux 命令的函数,记得 system() 是一个,之后还有另外一个。注意这两个命令是可以在 php.ini/php.conf 里面设置禁止使用的。
如何在php中获取curl请求的请求头信息及相应头信息
获取请求头信息,可以在curl_exec函数执行前,添加代码curl_setopt($ch,CURLINFO_HEADER_OUT,true);在curl_exec函数执行后,通过 curl_getinfo($ch,CURLINFO_HEADER_OUT) 来获取curl执行请求的请求数据。获取响应头信息,可以在curl_exec函数执行前,添加代码 curl_setopt($ch, CURLOPT_HEADER, true);curl_setopt($ch, CURLOPT_NOBODY,true); 之后 通过curl_exec函数来获取响应头信息。获取设置 curl_setopt($ch, CURLOPT_NOBODY,false);然后对curl_exec获取的值通过\\r\\n\\r\\n进行分割截取第一部分即为响应头信息。 参考技术A <?php
$url = 'http://demo.zjmainstay.cn';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, true); //返回头信息
curl_setopt($ch, CURLOPT_NOBODY, true); //不返回内容
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //返回数据不直接输出
$content = curl_exec($ch); //执行并存储结果
curl_close($ch);
echo $content;
更多关于php cURL的内容,请参考我的博客《PHP cURL 应用》
http://www.zjmainstay.cn/php-curl
以上是关于php如何执行linux的curl指令的主要内容,如果未能解决你的问题,请参考以下文章