php使用curl函数提示Call to undefined function curl_init()

昨天我在使用curl来写一个api接口时发现运行curl函数时提示Call to undefined function curl_init()错误,从错误来看就是没有定义curl_init()函数了,后来才知道此函数必须开启php中的一个文件,具体方法如下。

程序代码我是这样写的:

  1. <?php
  2. // 初始化一个 cURL 对象
  3. $curl = curl_init();
  4. // 设置你需要抓取的URL
  5. curl_setopt($curl, CURLOPT_URL, 'http://www.111cn.net');
  6. // 设置header
  7. curl_setopt($curl, CURLOPT_HEADER, 1);
  8. // 设置cURL 参数,要求结果保存到字符串中还是输出到屏幕上。
  9. curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  10. // 运行cURL,请求网页
  11. $data = curl_exec($curl);
  12. // 关闭URL请求
  13. curl_close($curl);
  14. // 显示获得的数据
  15. var_dump($data); ?>

结果提示了:Call to undefined function curl_init(),后来百度了一些解决办法,大家可参考。

windows+apache下修改配置:

1.修改php.ini,将;extension=php_curl.dll前面的分号去掉

2.拷贝libeay32.dll、ssleay32.dll(C:AppServphp5)两个文件到system32目录

3.重启Apache(services.msc)即可

linux+apache解决:需要安装curl软件包。若使用ubuntu,则打开新立得软件包管理器搜索curl,安装curl即可