猿问

php命名空间问题,为什么f1(); 调用最近的那个空间的函数,他们都在同一个空间?

<?php
namespace first;
function f1(){
    echo 'f1-1';
}
namespace second;
function f1(){
    echo 'f1-2';
}
f1();

//结果为什么输出f1-2, 难道他们都在同一个空间?就近原则?

慕斯709654
浏览 464回答 2
2回答

小唯快跑啊

单文件多命名空间最好使用{}来划分空间范围

冉冉说

你这写法,f1(); 明显就是在second 这个命名空间下,肯定调用的是第二个啊,哪有什么就近原则。 你在后面 echo __NAMESPACE__; 就知道了。
随时随地看视频慕课网APP
我要回答