卷曲 - 在Windows CLI上不起作用

时间:2011-07-01 09:16:57

标签: curl php

Curl在Windows命令提示符下不起作用,但它在浏览器上工作正常(localhost)

错误:

C:\wamp\www\site>C:\wamp\bin\php\php5.3.0\php.exe -f index.php

PHP Fatal error:  Call to undefined function curl_init() in C:\wamp\www\site\index.php on line 111

Fatal error: Call to undefined function curl_init() in C:\wamp\www\site\index.php on line 111

是PHP Curl已启用,就像我说它在浏览器上运行正常。

5 个答案:

答案 0 :(得分:6)

在命令行中运行 php -r“echo php_ini_loaded_file();”以查看正在加载哪个ini文件。

然后在第656行 extension = php_curl.dll 之前删除;

重启apache

要使其工作,请确保将php设置为全局变量,如果没有设置为D:\ wamp \ bin \ php \ php5.2.5(路径可以在您的计算机上更改)命令行&运行代码

答案 1 :(得分:5)

尝试运行

php.exe --re curl

确保curl已启用/可用于php-cli。确保cli使用与web服务器中相同的php.ini,否则也可能需要在那里启用curl。

答案 2 :(得分:4)

我刚刚遇到这个问题 - 在安装PEAR之后。

中有一个php.ini
C:\wamp\bin\php\php5.3.8

但Apache使用的那个位于

C:\wamp\bin\apache\Apache2.2.21\bin

答案 3 :(得分:2)

做一个:

php.exe -i > phpinfo.txt

打开phpinfo.txt并检查:

  1. 已加载的配置文件
  2. 的extension_dir
  3. 已加载的扩展程序
  4. 很可能,PHP-CLI正在加载不同的.ini文件。

    修改

    好吧,好像你可以做一个:

    C:\wamp\bin\php\php5.3.0\php.exe -c C:\wamp\bin\php\php5.3.0\php.ini -f index.php
    

    -c参数中,指定您要使用的.ini文件的路径。

答案 4 :(得分:1)

我不确定基于Windows的平台是否也是如此,但在Linux下,CLI PHP可执行文件(命令提示符可运行二进制文件)使用与Web服务器二进制文件不同的php.ini(可能是Windows下的CGI模块)

在我看来,好像在Web服务器php.ini中启用了Curl模块,但在CLI版本中没有启用。