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

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

WBOY
Release: 2016-06-06 20:07:09
Original
1101 people have browsed it

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

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

回复内容:

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

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

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

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

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

namespace a\b\c {

}

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

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

//而且, 命名空间是对class, function, const有效的
</code>
Copy after login

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

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

Related labels:
php
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template