php curl_exec()

WBOY
Release: 2016-06-23 14:00:33
Original
1179 people have browsed it

公司写一个抛xml文档的程序  抛送url 用如下代码
                           $ch = curl_init();

                            curl_setopt($ch, CURLOPT_URL, "http://".$this->IP.$this->URL);

                            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                            curl_setopt($ch, CURLOPT_POST, 1);

                            curl_setopt($ch, CURLOPT_POSTFIELDS, $this->PARAMETER );

                            $ret = curl_exec($ch);

                            curl_close ($ch);

这段代码所有参数我看了没有问题
但curl_exec() 返回时false值
我查了下百度说要开启  extension=php_curl.dll 这个动态库
----
请问这个动态库是不是只有在windows下才有。我公司的环境是php 5.3.5   ,linux  环境, 我查了下公司php.ini没有这个选项。
请问在linux下 如何使用这个函数。要如何配置php.ino


回复讨论(解决方案)

linux下php扩展curl的安装

需要编译进去,具体方法可以网上查阅一下。

phpinfo(); 看下curl 是否开启了。

.dll 是windows的动态链接库。
linux下是需要  .so扩展。
search一下吧,不少教程

curl_exec()  返回 false 值
表示连接 "http://".$this->IP.$this->URL 失败
请检查 url 真实可用

如果是 curl 扩展没有加载,则会报函数未定义

请问linux下如何查看 curl是否可用?

$ch = curl_init();
不报错
echo $ch; 
输出 Resource id #...

就表示 curl 可用

专业一点就是
if(! function_exists('curl_init')) die 'curl 不可用';

我看到公司有curl.so 这个文件    。他的路径是:/usr/lib64/php/modules/curl.so
我在php.ini 中 加入extension=/usr/lib64/php/modules/curl.so  是否正确
--测试下 。还是不成功

"http://".$this->IP.$this->URL);
这个地址打印出来。

这个地址有效么?

 $ch = curl_init();                            curl_setopt($ch, CURLOPT_URL, "http://".$this->IP.$this->URL);                            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);                            curl_setopt($ch, CURLOPT_POST, 1);                            curl_setopt($ch, CURLOPT_POSTFIELDS, $this->PARAMETER );                            $ret = curl_exec($ch);                            // 检查是否有错误发生                            if( curl_errno ( $ch )) {                            echo  'Curl error: '  .  curl_error ( $ch );                            }                            curl_close ($ch);
Copy after login


看看提示什么。

首先你应该从几个问题入手:
1)curl扩展是否开启,查看#7
2)curl的url是否正确

公司 curl.so文件都已经配置好。原因是这台服务器没有做连接外网的设置 谢谢 。已经调通了

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!