我有类似下面的PHP代码,这在XAMPP版本5.3上很顺利:
...
if (!@$this->LDAP_Connection = ldap_connect($this->LDAP_Server, $this->LDAP_Port)) {
$this->_SetLDAPError();
return false;
} else {
...
}
...
但是当我切换到XAMPP版本5.5.19时,它似乎是一个未知的错误。
php.ini文件中是否有错误的配置?或
在XAMPP 5.5.19版或更高版本中使用错误控制操作符(' @')还有其他方法吗?
我已阅读http://php.net/manual/en/language.operators.errorcontrol.php中的文档,但它并未解决问题。
感谢您抽出宝贵时间给我一些示例代码或在回答评论时更改我的代码。
答案 0 :(得分:0)
试试这个希望帮助
@$this->LDAP_Connection = ldap_connect($this->LDAP_Server, $this->LDAP_Port)
if (!is_object($this->LDAP_Connection)) {
$this->_SetLDAPError();
return false;
} else {
...
}
答案 1 :(得分:0)
我发现了问题。 PHP版本5.4或更高版本的XAMPP需要文件夹xampp / apache / bin /中的文件libsasl.dll。安装XAMPP时,libsasl.dll已在文件夹xampp / php /中设置。所以我只是复制它。
我发现这与XAMPP有关,其中修复是在启用ldap扩展(http://www.apachefriends.org/f/viewtopic.php?p=185776)之前将libsasl.dll从xampp / php移到xampp / apache / bin。我尝试了它并且它有效。