45

使用 WAMP 时出现此错误:

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

我已经编辑了php.ini文件夹并启用了php_ldap.dll.

phpinfo()出于某种原因,当我打开它们时,只有一些扩展出现。我已经重新启动了 Apache 并重新启动了我的计算机。

4

5 回答 5

120

如果您是 Windows 用户,这是您使用时的常见错误,XAMPP因为LDAP默认情况下未启用。

您可以按照以下步骤确保LDAP在您的XAMPP

  • [Your Drive]:\xampp\php\php.ini:在此文件中取消注释以下行:

     extension=php_ldap.dll
    
  • 移动文件: libsasl.dll, from [Your Drive]:\xampp\phpto [Your Drive]:\xampp\apache\bin(注意: 移动文件只需要 XAMPP 之前的版本: 5.6.28)

  • 重启阿帕奇。

  • 您现在可以使用 LDAP 模块的功能了!

如果您使用 Linux:

对于 php5:

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

于 2013-07-04T12:27:22.430 回答
3

将 PHP 的路径添加到 Windows 系统路径。路径应包含php.exe.

添加路径后打开一个新的命令提示符并通过键入确保php.exe在路径中

C:\>php --help

一旦您从上面看到正确的帮助消息,请php_ldap.dllphp.ini

php_ldap.dllphp/ext目录复制到apache/bin文件夹

重新启动 wamp,phpinfo()现在将显示 ldap 已启用。

于 2014-06-17T17:24:52.533 回答
0

打开 XAMMP php.ini 文件(默认路径为 C:\xammp\php\php.ini)并将代码(;extension=ldap)更改为 extension=php_ldap.dll 并保存。重新启动 XAMMP 并保存。

php.ini

; 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
于 2020-11-26T15:04:32.407 回答
0
  • [您的驱动器]:\xampp\php\php.ini:在此文件中取消注释以下行:

    扩展=php_ldap.dll

  • 移动文件:libsasl.dll,从 [Your Drive]:\xampp\php 到 [Your Drive]:\xampp\apache\bin 重启 Apache。您现在可以使用 LDAP 模块的功能了!

于 2016-06-20T12:21:05.563 回答
0

我的服务器是带有 Apache 2.4 的 Windows Server 2016,我也遇到了这个错误。移动文件libsasl.dll,从C:\phpC:\apache\bin并重新启动 Apache。

于 2022-01-08T14:57:18.000 回答