Php 致命错误:调用未定义的函数:ldap_connect()
使用WAMP时出现以下错误: 致命错误:调用未定义的函数:Php 致命错误:调用未定义的函数:ldap_connect(),php,wamp,Php,Wamp,使用WAMP时出现以下错误: 致命错误:调用未定义的函数:ldap\u connect() 我已经编辑了php.ini文件夹并启用了php\u ldap.dll 由于某些原因,当我打开它们时,只有一些扩展出现在phpinfo()中。我重新启动了Apache并重新启动了计算机。如果您是Windows用户,这是使用XAMPP时的常见错误,因为默认情况下未启用LDAP 您可以按照以下步骤确保LDAP在XAMPP中工作: [您的驱动器]:\xampp\php\php.ini:在此文件中,取消对以下行的
ldap\u connect()
我已经编辑了php.ini
文件夹并启用了php\u ldap.dll
由于某些原因,当我打开它们时,只有一些扩展出现在
phpinfo()
中。我重新启动了Apache并重新启动了计算机。如果您是Windows用户,这是使用XAMPP
时的常见错误,因为默认情况下未启用LDAP
您可以按照以下步骤确保LDAP
在XAMPP
中工作:
:在此文件中,取消对以下行的注释:[您的驱动器]:\xampp\php\php.ini
extension=php_ldap.dll
- 将文件:
,从libsasl.dll
移动到[您的驱动器]:\xampp\php
(注意:只有在版本:[您的驱动器]:\xampp\apache\bin
之前的xampp才需要移动文件)5.6.28
- 重新启动Apache
- 您现在可以使用LDAP模块的功能了
sudo apt-get install php5-ldap
对于php7:
sudo apt-get install php7.0-ldap
如果您使用的是最新版本的PHP,您可以
sudo apt-get install php-ldap
运行上面的命令应该可以做到这一点
如果出于任何原因它不起作用,请检查php.ini配置以启用ldap,删除
extension=ldap
之前的分号以取消注释、保存并重新启动Apache将php的路径添加到Windows系统路径。路径应包含php.exe
添加路径后,打开一个新的命令提示符,并通过键入确保php.exe
位于路径中
C:\>php --help
一旦您从上面看到正确的帮助消息,在php.ini
同时将php\u ldap.dll
从php/ext
目录复制到apache/bin
文件夹
重新启动wamp,phpinfo()
现在将显示已启用ldap。- [您的驱动器]:\xampp\php\php.ini:在此文件中,取消对以下行的注释:
extension=php_ldap.dllextension=php_ldap.dll
- 将文件libsasl.dll从[您的驱动器]:\xampp\php移动到[您的驱动器]:\xampp\apache\bin 重新启动Apache。 您现在可以使用LDAP模块的功能了
; Notes for Windows environments :
;
; - Many DLL files are located in the extensions/ (PHP 4) or ext/ (PHP 5+)
; extension folders as well as the separate PECL DLL download (PHP 5+).
; Be sure to appropriately set the extension_dir directive.
;
extension=bz2
extension=curl
extension=fileinfo
extension=gd2
extension=gettext
;extension=gmp
;extension=intl
;extension=imap
;extension=interbase
extension=php_ldap.dll
实际的扩展是否可用?比如,您的extensions文件夹中是否有php_ldap.dll?在我的linux示例中,它是yum install php ldap,安装了软件包,但仍然无法登录,可能我需要重新启动ampps.:(复制文件是关键!非常感谢。使用当前的XAMPP(5.6.28),文件已经存在,无需复制。答案对于任何PHP安装都是正确的,不仅仅是wamp/XAMPP(例如,通过web平台安装IIS的PHP)。非常好,感谢您的回答!