2

我正在查看的文件名为examples.php,包含以下代码:

include (dirname(__FILE__) . "/adLDAP.php");
try {
    $adldap = new adLDAP();
}

显示的错误如下:

Fatal error: Class 'adLDAP' not found in /var/www/examples.php on line 14

第 14 行是:

$adldap = new adLDAP();

adLDAP.php 与examples.php 位于同一文件夹中,并且包含adLDAP 类。

我搞砸了我的包含声明吗?我用我尝试过的其他格式得到“没有这样的文件或目录”。感觉就像我错过了一些明显的东西。

adLDAP.php 在早期实例化 adLDAP 类:

<?php
namespace adLDAP;

require_once(dirname(__FILE__) . '/collections/adLDAPCollection.php');
require_once(dirname(__FILE__) . '/classes/adLDAPGroups.php');
require_once(dirname(__FILE__) . '/classes/adLDAPUsers.php');
require_once(dirname(__FILE__) . '/classes/adLDAPFolders.php');
require_once(dirname(__FILE__) . '/classes/adLDAPUtils.php');
require_once(dirname(__FILE__) . '/classes/adLDAPContacts.php');
require_once(dirname(__FILE__) . '/classes/adLDAPExchange.php');
require_once(dirname(__FILE__) . '/classes/adLDAPComputers.php');

class adLDAP {

等等

4

1 回答 1

5

adLDAP类定义在adLDAP命名空间中。你需要告诉 PHP 这个类在这个命名空间中:

$adldap = new adLDAP\adLDAP();

use您还可以使用关键字导入此类:

<?php
    include (dirname(__FILE__) . "/adLDAP.php");
    use adLDAP\adLDAP;

    $adldap = new adLDAP;
于 2014-03-07T23:02:43.507 回答