<?php
namespace MissZhou;
function var_dump($a=1){
echo "加油啊";
}
var_dump();
\var_dump(1);
\表示调用全局
解决常量的冲突问题 有点像子目录的概念
namespace meizi;//必须放第一行
include "func.inc.php";
function one() {
echo "aaaaaaaaaaaaa<br>";
}
function two() {
echo "bbbbbbbbbbbbbbb<br>";
}
one();
\one();
define("meizi/ROOT", "9999999999999");
<?php
/*
* 命名空间 --- 名子空间
*
*
* 1. 常量
* 2. 函数
* 3. 类
*
*
* 一、 namespace 来声明
* 二、 在namespace声明命名空间的代码上面,不能有任何PHP代码和HTML内容输出(除了declare ), 声明命名空间只能是第一条
*/
// declare(encoding="utf-8");
//声明一个名子空间, 前缀为 meizi
namespace meizi\pl;
const AAA = 1;
class Demo {
static function one() {
echo "11111111111<br>";
}
}
function test() {
echo "222222222222222<br>";
}
test();
\meizi\pl\test();
echo AAA."<br>";
echo \meizi\pl\AAA."<br>";
Demo::one();
\meizi\pl\Demo::one();
<?php
/*
* 命名空间 --- 名子空间
*
*
* 1. 常量
* 2. 函数
* 3. 类
*
*
* 一、 namespace 来声明
* 二、 在namespace声明命名空间的代码上面,不能有任何PHP代码和HTML内容输出(除了declare ), 声明命名空间只能是第一条
* 三、定义多个名子空间,以最后一个为主
*四、在实际的编程实践中,非常不提倡在同一个文件中定义多个命名空间。 (不要在大括号外部加任何代码)
*/
// declare(encoding="utf-8");
//声明一个名子空间, 前缀为 meizi
namespace hello\world {
const AAA = 1;
class Demo {
static function one() {
echo "11111111111<br>";
}
}
function test() {
echo "222222222222222<br>";
}
test();
\hello\world\test();
echo AAA."<br>";
echo \hello\world\AAA."<br>";
Demo::one();
\hello\world\Demo::one();
}
$a = 10;
namespace meizi\pl {
const BBB = 2;
echo BBB."<br>";
echo \meizi\pl\BBB."<br>";
echo \hello\world\AAA."<br>";
}
namespace {
\var_dump(100);
}
动态输出:
<?php
namespace MissZhou;
function demo(){
echo "努力啊少女";
}
$fun="MissZhou\demo";
$fun();
类 常量同理 我们想到了一个没讲的魔术常量
<?php
namespace MissZhou;
function demo(){
echo "努力啊少女";
}
$fun="MissZhou\demo";
$fun();
echo __NAMESPACE__;
作用 <?php
namespace MissZhou;
function demo(){
echo "努力啊少女";
}
$fun=__NAMESPACE__."\demo";
$fun();
echo __NAMESPACE__;
再介绍一个操作符namespace等价于self::
好长啊啊 取别名吧
<?php
namespace MissZhou\zyj\fighting;//一般用公司域名的倒写 貌似html课程讲过==
use MissZhou\zyj\fighting as wuli;
function demo(){
echo "努力啊少女";
}
wuli\demo();
还有一个问题,php调用类的时候,如果当前文件里面没有,不会自动找全局!(但是很纠结的是如果定义的时候不写,定义在全局)如何解决?不想写了,偷张图吧
use只能导入类,不能导入常量和函数