PHP命名空间和包含文件

时间:2014-02-24 16:02:51

标签: php namespaces

我有以下PHP代码:

<?php
namespace my_ns;

class dummy
{

function do_print(){echo "printing...";}    
}

$obj_dummy=new dummy();
$obj_dummy->do_print();
?>

这很好用,

如果我将该类放在单独的包含文件(例如class.dummy.php)中,使页面上的代码如下所示:

<?php
namespace my_ns;
include ("class.dummy.php");
$obj_dummy=new dummy();
$obj_dummy->do_print();
?>

我收到错误消息:

  

在'...

中找不到“my_ns \ dummy”类

默认情况下如何确保(所有)包含文件自动添加到给定的命名空间?

1 个答案:

答案 0 :(得分:2)

  

包含命名空间的文件必须在任何其他代码之前在文件顶部声明命名空间 - 有一个例外:declare关键字。

<强> Source

也可以将其添加到您的文件中。

namespace my_ns;

之后,您的代码运行正常。

<强> Reference