【问题标题】:Error Control Operator ('@') on XAMPP 5.5.19 or aboveXAMPP 5.5.19 或更高版本上的错误控制运算符 ('@')
【发布时间】:2014-12-22 03:14:03
【问题描述】:

我有如下 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 中的文档,但并没有解决问题。

感谢您花时间给我一些示例代码或在回答评论中更改我的代码。

【问题讨论】:

    标签: php xampp


    【解决方案1】:

    试试这个希望有帮助

    @$this->LDAP_Connection = ldap_connect($this->LDAP_Server, $this->LDAP_Port)
    if (!is_object($this->LDAP_Connection)) {
    $this->_SetLDAPError();
    return false;
    } else {
    ...
    }
    

    【讨论】:

      【解决方案2】:

      我发现了问题。带有 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。我试过了,效果很好。

      【讨论】:

        猜你喜欢
        • 2014-06-04
        • 2014-09-28
        • 2015-05-29
        • 2021-04-03
        • 2018-01-02
        • 1970-01-01
        • 1970-01-01
        • 2015-11-07
        相关资源
        最近更新 更多