php类知识---命名空间

<?php
#命名空间namespace用来解决类的命名冲突,和引用问题
namespace trainingplan1;
class mycoach
{
    public function trainning()
    {
        echo "力量练习,腿法,拳法,抗击打能力"."\n";
    }
}

namespace trainningplan2;
class mycoach
{
    public function trainning()
    {
        echo "腹肌,腰肌力量,无氧运动,有氧运动,摔跤,地面搏击技术"."\n";
    }
}

$cpc = new mycoach();
$cpc->trainning();

?>

输出结果:

腹肌,腰肌力量,无氧运动,有氧运动,摔跤,地面搏击技术

#如果我只想引用trainingplan1下的类

<?php #命名空间namespace用来解决类的命名冲突,和引用问题 namespace trainingplan1; class mycoach { public function trainning() { echo "力量练习,腿法,拳法,抗击打能力"."\n"; } } namespace trainningplan2; class mycoach { public function trainning() { echo "腹肌,腰肌力量,无氧运动,有氧运动,摔跤,地面搏击技术"."\n"; } } $cpc = new \trainingplan1\mycoach(); $cpc->trainning(); ?>

输出结果:

力量练习,腿法,拳法,抗击打能力

 

#项目文件中,兹有文件名wenwa.php,定义类mycoach如下:


<?php #命名空间namespace用来解决类的命名冲突,和引用问题 namespace trainingplan1; class mycoach { public function trainning() { echo "力量练习,腿法,拳法,抗击打能力"."\n"; } } namespace trainningplan2\cj; class mycoach { public function trainning() { echo "腹肌,腰肌力量,无氧运动,有氧运动,摔跤,地面搏击技术"."\n"; } } ?>

 

如果另有一trainning1.php文件想引用wenwa.php文件中命名空间trainningplan2\cj下的类mycoach

定义方法如下:

<?php
#命名空间namespace用来解决
 include "wenwa.php";
 use \trainningplan2\cj\mycoach;   #use关键字
 $cpc = new mycoach();
 $cpc->trainning();
?>

输出结果如下:

腹肌,腰肌力量,无氧运动,有氧运动,摔跤,地面搏击技术

 

posted @ 2019-06-02 20:49  saintdingtheGreat  阅读(286)  评论(0编辑  收藏  举报