【发布时间】:2013-10-30 12:07:08
【问题描述】:
假设我有一个文件夹,里面有一些文件:
- 基础设施/核心/Database.php
- 基础设施/核心/Model.php
- 基础设施/核心/View.php
- 基础设施/核心/Controller.php
在每个文件中,我都这样声明了命名空间:
数据库.php
namespace Infrastructure\Core
{
class Database
{...}
}
Model.php
namespace Infrastructure\Core
{
class Model
{...}
}
等等……
现在我想使用该命名空间中的所有类。想象一下我有以下根文件
index.php
use Infrastructure\Core
class Main
{
$database = new Database();
$controller = new Controller();
//...etc..
}
这几乎就像 java 和 C# 命名空间,但显然在 PHP 中它不起作用......所以以下也不起作用:
index.php
use Infrastructure\Core
class Main
{
$database = new Infrastructure\Core\Database();
$controller = new Infrastructure\Core\Controller();
//...etc..
}
也不起作用,所以我最后想,好吧,我也必须包含文件......仍然不起作用..我做错了什么?我真的没有得到数百万个示例,因为它看起来与我以前使用的任何其他命名空间都大不相同。
谁能提供一个特定于此的示例并使用正确的语法,这样我就可以了解 PHP 的全部内容。我认为这是 php 中的一个稍微不同的概念?
【问题讨论】:
-
“它不起作用”不是对错误的描述
-
也许是
include "../Infrastructure/Core/Database.php" -
我没有收到任何错误,对不起,伙计。我正在使用 IIS,如果有错误,不知道如何打开。
-
尝试使用
error_reporting(E_ALL) -
啊,所以这应该有效吗? @塞巴斯蒂安
标签: php namespaces