首页 > 刚学命名空间,做了个小实验,怎么不对,就几行代码,谢谢指教!

刚学命名空间,做了个小实验,怎么不对,就几行代码,谢谢指教!

//1.php
<?php
    include("2.php");
    namespace a\b;
    echo c\$aVar;
//2.php
<?php
    namespace a\b\c;
    $aVar=88;

我是想输出这个88,怎么提示错误?


好好学习下PHP官方手册吧,这最基础的东西。手册上都写得很清楚的。


懒得翻资料了,随口说一下,不一定对:
1-namespace应该在首行
2-namespace仅对类有效,因此你这种代码根本不需要写namespace。


namespace a\b;  //定义命名空间, 使用该定义方式, 需要保证在脚本的第一行!

/*----------------------------*/

namespace a\b {
    //采用该方式, 可以不在第一行, 并且可以同一个文件定义多个命名空间
}

namespace a\b\c {

}

/*----------------------------*/

//再说说你的误区, 即使变量是有命名空间的, 你的1.php应该这样写
include ('2.php');
use a\b;  //这里应该是use, 不应该又声明一次

//而且, 命名空间是对class, function, const有效的
【热门文章】
【热门文章】