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

问题描述 投票:0回答:6

我在使用 WAMP 时遇到此错误:

致命错误:调用未定义的函数:

ldap_connect()

我已经编辑了

php.ini
文件夹并启用了
php_ldap.dll

由于某种原因,当我打开它们时,只有一些扩展会显示在

phpinfo()
中。我已经重新启动了 Apache 并重新启动了我的计算机。

php wamp
6个回答
123
投票

如果您是 Windows 用户,这是使用

XAMPP
时的常见错误,因为默认情况下未启用
LDAP

您可以按照以下步骤确保

LDAP
在您的
XAMPP
中工作:

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

     extension=php_ldap.dll
    
  • 移动文件:

    libsasl.dll
    ,从
    [Your Drive]:\xampp\php
    [Your Drive]:\xampp\apache\bin
    (注意:仅XAMPP之前的版本需要移动文件:
    5.6.28

  • 重新启动 Apache。

  • 您现在可以使用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


3
投票

将 PHP 的路径添加到 Windows 系统路径。该路径应包含

php.exe

添加路径后,打开一个新的命令提示符,并通过键入

 确保 
php.exe

在路径中
C:\>php --help

一旦您从上面看到正确的帮助消息,请在

php_ldap.dll
 中启用 
php.ini

扩展

同时将

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

重新启动 wamp,

phpinfo()
现在将显示 ldap 已启用。


0
投票
  • [您的驱动器]:\xampp\php\php.ini:在此文件中取消注释以下行:

    扩展=php_ldap.dll

  • 将文件:libsasl.dll,从 [您的驱动器]:\xampp\php 移动到 [您的驱动器]:\xampp pache 重新启动阿帕奇。 您现在可以使用LDAP模块的功能了!


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

0
投票

我的服务器是带有 Apache 2.4 的 Windows Server 2016,我也遇到了这个错误。将文件

libsasl.dll
C:\php
移动到
C:\apache\bin
并重新启动 Apache。


0
投票

感谢大家的贡献。 就我而言,我需要采取以下 3 点行动才能使 ldap_connect() 在 PHP8.2.3 中工作:

  1. 将 php_ldap.dll 添加到 php.ini
  2. 将 libsasl.dll 从 PHP 复制到 APACHE
  3. 将PHP路径添加到PATH环境变量中 然后重新启动APACHE
© www.soinside.com 2019 - 2024. All rights reserved.