我已从php.ini文件
取消注释以下内容;extension=php_bz2.dll
extension=php_curl.dll
;extension=php_dba.dll
另外,我已将php_curl.dll复制到windows \ system32并重启apache服务器。
我正在测试以下脚本
<?php
$curl_handle=curl_init();
curl_setopt($curl_handle,CURLOPT_URL,'http://example.com');
curl_setopt($curl_handle,CURLOPT_CONNECTTIMEOUT,2);
curl_setopt($curl_handle,CURLOPT_RETURNTRANSFER,1);
$buffer = curl_exec($curl_handle);
curl_close($curl_handle);
if (empty($buffer))
{
print "Sorry, example.com are a bunch of poopy-heads.<p>";
}
else
{
print $buffer;
}
?>
并收到以下错误
Fatal error: Call to undefined function curl_init() in C:\wamp\www\t.php on line 3
任何帮助将不胜感激?
答案 0 :(得分:6)
确保您已从右侧php.ini文件中取消注释扩展名。您应该通过phpinfo()
命令检查扩展是否已启用。
答案 1 :(得分:4)
甚至更简单,点击通知区域(屏幕右下角)的wamp图标, 浏览PHP&gt; PHP扩展并单击第二项'php_curl'。 Wamp将自动重启。
答案 2 :(得分:4)
我遇到了同样的问题,我解决了它只是unistalling wamp2_x64(首先安装在c:\ wamp中)并在文件夹C:/ Program Files(x86)/ wamp中重新安装wamp_x86。
这似乎解决了这个问题,我想这可能是64位dll的问题。
答案 3 :(得分:4)
某个WAMP服务器包中的php_curl.dll是错误的文件,我遇到了同样的问题,我在/ wamp / bin / php / php中找到了正确的php_curl.dll文件[youversion / ext /并替换了它它起作用了。 请参阅此文章:http://forum.wampserver.com/read.php?2,85716
答案 4 :(得分:1)
与64位Windows 7有同样的问题。这对我有用。
Soren从另一个SO主题回答 - CURL for WAMP
“某处似乎有一个错误。如果您在Win 7 64位上遇到此问题,请尝试安装apache插件版本2.2.9和php插件版本5.3.1并切换到WAMP中的那些然后激活CURL扩展那对我有用。“
答案 5 :(得分:1)
我遇到了与Wampserver 2.2(64位)相同的问题。以下是我为实现目标所做的工作:
1)转到wampserver-&gt; PHP-&gt; PHP扩展,启用php_curl扩展
2)打开\ bin \ php \ php5.3.13 \ php.ini并取消注释以下行: 延长= php_curl.dll
3)转到\ bin \ php并将libeay32.dll和ssleay32.dll复制到windows \ system32文件夹中
4)如果您尝试重新启动wampserver的服务,您会注意到lib_curl仍然无效。事实证明,捆绑包中的php_curl.dll版本未正确编译。
Apache的错误日志包含以下内容:
警告:PHP启动:无法加载动态库
'c:/wamp/bin/php/php5.3.13/ext/php_curl.dll' - 应用程序无法启动,因为它的并排配置不正确。请参阅应用程序事件日志或使用命令行sxstrace.exe工具获取更多详细信息。
5)你需要一个正确编译的php_curl.dll版本。我从这篇博文中下载了php_curl-5.3.13-VC9-x64.zip:
[www.anindya.com]
直接链接:
[www.mediafire.com]
我用上面的那个替换了\ bin \ php \ php5.3.13 \ ext里面的php_curl.dll,一切都很好微笑笑脸 6)要测试cURL扩展是否适合您,请尝试使用此代码段
`
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,
'http://news.google.com/news?hl=en&topic=t&output=rss');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$contents = curl_exec ($ch);
echo $contents;
curl_close ($ch);
?>
`
这是另一篇有相似信息的帖子(我在写完这些说明后发现了这一点): [www.o3n.org]
答案 6 :(得分:0)
如果你已经从php.ini中取消注释了行并且仍然得到错误 你应该确保这个扩展文件存在于php文件夹中
所以检查这个文件
php_curl.dll
in
{瓦帕} \ BIN \ PHP中\ php5.x.x \分机\
如果它不是从网上下载并将其粘贴到那里
重启Apache。
答案 7 :(得分:0)
;extension=php_curl.dll
(通过删除分号来实现)答案 8 :(得分:-1)
这解决了我的问题
C:\Path\To\WAMP\bin\Apache\ApacheVersion\bin\
extension=php_curl.dll
应该有希望解决它。