在我的Windows 10笔记本电脑上,一个简单的php_curl example不再工作了。它以前工作过。
Fatal error: Uncaught Error: Call to undefined function curl_init() in C:\Users\path\curl.php:3 Stack trace: #0 {main} thrown in C:\Users\path\curl.php on line 3
我的C:\ php7 \ php.ini有扩展名= C:\ php7 \ ext \ php_curl.dll
php_curl.dll存在于C:\ php7 \ ext
PHP Version 7.0.30
Windows 10 Pro版本1607 Build 14393.2189
但是我的loclahost / phpinfo.php没有cURL。怎么突然它消失了?
PS:脚本在命令行中运行。只是Apache没有加载扩展名。
答案 0 :(得分:1)
不知道它为什么suddenly stopped working
,但首先运行<?php phpinfo(~0);
,并检查实际加载的哪个php.ini文件(这样可以避免编辑错误的php.ini文件无效){ {3}}(在此示例中为/etc/php/7.0/fpm/php.ini
),然后编辑该php.ini文件,如果该文件实际上具有extension=C:\php7\ext\php_curl.dll
行,则以下设置的某些组合设置错误:
display_startup_errors
为Off
,将其更改为On
display_errors
为Off
,将其更改为On
error_reporting
不是E_ALL
,将其更改为error_reporting=E_ALL
(没有别的,不像error_reporting= E_ALL & ~E_NOTICE
或其他什么,只需E_ALL)
html_errors
为Off
,将其更改为On
然后重新启动apache,再次检查phpinfo()页面,并验证新配置选项是否实际已加载,然后运行<?php curl_init();
,它应该显示有关无法加载curl扩展的原因的错误。
答案 1 :(得分:0)
我在其他StackOverflow答案上遇到了一些链接(如果我再次追踪它们,将在此处发布链接)。我有Apache 2.4.23 Win64 - 我将Apache重新安装到最新的 - 2.4.33 Win64 - 现在cURL正在运行。