我有一个从后端下载文件的PHP。我在Windows 7中使用WAMP,通过浏览器完成后效果很好。
现在我已经创建了一个批处理文件来执行php,它显示:
致命错误:调用未定义的函数curl_init()
不确定为什么在浏览器中可以解决的问题无法在批处理文件中运行。以下是批处理文件的代码:
@ECHO OFF
php.exe -f "C:\wamp\www\test\test.php"
知道这是什么问题吗?
答案 0 :(得分:4)
在php.ini上取消注释以下内容
;extension=php_curl.dll
并重新启动网络服务器。这可能是因为你的php中禁用了卷曲。
答案 1 :(得分: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
答案 2 :(得分: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,因此存在重叠导致混淆。
答案 3 :(得分:-1)
我的解决方案:
1)sudo apt-get install php5-curl
2)重启服务器