php 一个文件里面 两个命名空间名称相同 竟然不报错!!!

<?phpnamespaceperson{functionsay(){echo"hello";}}namespaceperson{}?>... <?php
namespace person{
function say()
{
echo "hello";
}
}
namespace person{
}
?>
展开
 我来答
  • 你的回答被采纳后将获得:
  • 系统奖励15(财富值+成长值)+难题奖励30(财富值+成长值)
lixiaosha666
2015-01-14 · 超过46用户采纳过TA的回答
知道小有建树答主
回答量:97
采纳率:100%
帮助的人:57.1万
展开全部
<?php
namespace person{
function say()
{
echo "hello";
}

}
namespace person{

}
say();

?>
这样就会报:
( ! ) Fatal error: No code may exist outside of namespace {} in C:\wamp\www\namespace.php on line 12
namespace person{
function say()
{
echo "hello";
}
say();
}
namespace person{

}
这样就不会报错
执行顺序的关系吧
Example #4 namespace操作符,命名空间中的代码
<?php
namespace MyProject;

use blah\blah as mine; // see "Using namespaces: importing/aliasing"

blah\mine(); // calls function blah\blah\mine()
namespace\blah\mine(); // calls function MyProject\blah\mine()

namespace\func(); // calls function MyProject\func()
namespace\sub\func(); // calls function MyProject\sub\func()
namespace\cname::method(); // calls static method "method" of class MyProject\cname
$a = new namespace\sub\cname(); // instantiates object of class MyProject\sub\cname
$b = namespace\CONSTANT; // assigns value of constant MyProject\CONSTANT to $b
?>
Example #5 namespace操作符, 全局代码
<?php

namespace\func(); // calls function func()
namespace\sub\func(); // calls function sub\func()
namespace\cname::method(); // calls static method "method" of class cname
$a = new namespace\sub\cname(); // instantiates object of class sub\cname
$b = namespace\CONSTANT; // assigns value of constant CONSTANT to $b
?>
用法是这样的

<?php

//创建一个名为'Article'的命名空间
namespace Article;

//此Comment属于Article空间的元素
class Comment { }

//创建一个名为'MessageBoard'的命名空间
namespace MessageBoard;

//此Comment属于MessageBoard空间的元素
class Comment { }
?>
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式