1

我有一个从后端下载文件的 PHP。我在 Windows 7 中使用 WAMP,通过浏览器完成后它可以完美运行。

现在我创建了一个批处理文件来执行 php,它显示:

致命错误:调用未定义的函数 curl_init()

不知道为什么可以在浏览器中工作的东西在批处理文件中不起作用。以下是我的批处理文件代码:

@ECHO OFF
php.exe -f "C:\wamp\www\test\test.php"

知道有什么问题吗?

4

4 回答 4

4

取消注释您的 php.ini 上的以下内容

;extension=php_curl.dll

并重新启动网络服务器。这可能是由于您的 php.ini 中禁用了 curl。

于 2013-02-06T08:42:30.650 回答
2

当您使用 wamp、xamp 或其他一体式服务器时,它使用位于 bin/conf/ 中的覆盖的 php.ini,而不是原始位置。

您需要从中复制或编辑位于 php.exe 文件夹中的 ini。

如果您无法访问它(共享服务器等),您可以在脚本文件夹中创建一个自定义 php.ini 文件,并放入所需的说明:

extension_dir = "c:/wamp/bin/php/php5.3.5/ext/" // change version if needed to yours
extension = php_curl.dll
于 2013-06-15T00:30:58.100 回答
0

通过浏览器使用时,它使用的是 WAMP,PHP ini 来自 C:\wamp\bin\php\php5.4.3

但是我在环境变量中将我的 php 目录设置为 C:\php-5.4.9,因此当使用 windows 批处理时,它会从该目录调用 php,并且那里没有 php.ini 文件。

我将 PHP ini 文件从 wamp 复制到 php 文件夹,现在它可以工作了。

显然我已经安装了 php 然后 wamp,因此存在重叠导致混乱。

于 2013-02-06T08:49:50.873 回答
-1

我的解决方案:

1)sudo apt-get install php5-curl

2) 重启服务器

于 2016-09-29T00:02:52.290 回答