1. <?php
  2. #命名空间namespace用来解决类的命名冲突,和引用问题
  3. namespace trainingplan1;
  4. class mycoach
  5. {
  6. public function trainning()
  7. {
  8. echo "力量练习,腿法,拳法,抗击打能力"."\n";
  9. }
  10. }
  11.  
  12. namespace trainningplan2;
  13. class mycoach
  14. {
  15. public function trainning()
  16. {
  17. echo "腹肌,腰肌力量,无氧运动,有氧运动,摔跤,地面搏击技术"."\n";
  18. }
  19. }
  20.  
  21. $cpc = new mycoach();
  22. $cpc->trainning();
  23.  
  24. ?>

输出结果:

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

  1. #如果我只想引用trainingplan1下的类
  2.  
  3. <?php
  4. #命名空间namespace用来解决类的命名冲突,和引用问题
  5. namespace trainingplan1;
  6. class mycoach
  7. {
  8. public function trainning()
  9. {
  10. echo "力量练习,腿法,拳法,抗击打能力"."\n";
  11. }
  12. }
  13.  
  14. namespace trainningplan2;
  15. class mycoach
  16. {
  17. public function trainning()
  18. {
  19. echo "腹肌,腰肌力量,无氧运动,有氧运动,摔跤,地面搏击技术"."\n";
  20. }
  21. }
  22. $cpc = new \trainingplan1\mycoach();
  23. $cpc->trainning();
  24. ?>

输出结果:

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

  1. #项目文件中,兹有文件名wenwa.php,定义类mycoach如下:
  2.  
  3. <?php
  4. #命名空间namespace用来解决类的命名冲突,和引用问题
  5. namespace trainingplan1;
  6. class mycoach
  7. {
  8. public function trainning()
  9. {
  10. echo "力量练习,腿法,拳法,抗击打能力"."\n";
  11. }
  12. }
  13.  
  14. namespace trainningplan2\cj;
  15. class mycoach
  16. {
  17. public function trainning()
  18. {
  19. echo "腹肌,腰肌力量,无氧运动,有氧运动,摔跤,地面搏击技术"."\n";
  20. }
  21. }
  22.  
  23. ?>

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

定义方法如下:

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

输出结果如下:

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

php类知识---命名空间的更多相关文章

  1. [Yii2.0] 以Yii 2.0风格加载自定义类或命名空间 [配置使用Yii2 autoloader]

    Yii 2.0最显著的特征之一就是引入了命名空间,因此对于自定义类的引入方式也同之前有所不同.这篇文章讨论一下如何利用Yii 2.0的自动加载机制,向系统中引入自定义类和命名空间.本文旨在抛砖引玉,如 ...

  2. 速战速决 (5) - PHP: 动态地创建属性和方法, 对象的复制, 对象的比较, 加载指定的文件, 自动加载类文件, 命名空间

    [源码下载] 速战速决 (5) - PHP: 动态地创建属性和方法, 对象的复制, 对象的比较, 加载指定的文件, 自动加载类文件, 命名空间 作者:webabcd 介绍速战速决 之 PHP 动态地创 ...

  3. Python 类的命名空间

    Python中类的定义其实就是执行代码块: class cc: a=0 print '+++++', print a 会直接执行print语句而不是在实例化cc时执行.执行后会生成对应的类的命名空间. ...

  4. php加了命名空间没引入初始化文件:类的命名空间要与文件夹名一致namespace Business\Event;缺少了Event

    php加了命名空间没引入初始化文件:类的命名空间要与文件夹名一致namespace Business\Event;缺少了Event

  5. 编译不通过:提示XXXX不是类或命名空间名 的解决办法

    手动写了一个类,需要引入预编译头stdafx.h.结果编译时提示XXXX不是类或命名空间名. 处理方法:将#include "stdafx.h"放在最前面.

  6. day 23-1 类的命名空间、组合

    类的命名空间 类与对象命名空间 类里 可以定义两种属性 静态属性 动态属性 类中的静态变量 可以被对象和类调用对于不可变数据类型来说,类变量最好用类名操作对于可变数据类型来说,对象名的修改是共享的,重 ...

  7. 类的命名空间&组合

    类的命名空间◆类中的静态变量可以被类调用也可以被对象调用◆对不可变数据类型来说,类变量最好用类名操作 class Person: money = 0 mother = Person() father ...

  8. 类型或命名空间名称“Interop”在类或命名空间“Microsoft.Office”中不存在(是否缺少程序集引用?)

    准备用C#编写Web程序,生成Excel报表,在使用下面语句时报错. using Microsoft.Office.Interop.Excel; 报错信息:类型或命名空间名称“Interop”在类或命 ...

  9. day23 01 类的命名空间

    day23  01 类的命名空间 一.初识面向对象复习 定义类: class 函数:方法 动态属性 变量:类属性 静态属性 过程: (1)_init_方法:初始化:def _init_(self,参数 ...

随机推荐

  1. [转帖]什么是BSS/OSS,及区别和联系

    什么是BSS/OSS,及区别和联系 https://blog.csdn.net/jionghan3855/article/details/3856873 BSS:Business support sy ...

  2. [转帖]快速部署Telegraf & Influxdb

    快速部署Telegraf & Influxdb https://www.cnblogs.com/deykenlee/p/7565647.html 作者的blog 比较早 后来 influxdb ...

  3. logid让你的请求完整可追溯

    今天是在博客园开园的第一天 一时间其实并不能想起来到底该写什么文章,其实想写的东西挺多 今天就以logid这个主题开始吧,网上写这个的文章似乎不多,但是的确是在实际生产中相当重要的一个能力,也是容易被 ...

  4. 从入门到自闭之Python集合,深浅拷贝(大坑)

    小数据池 int: -5~256 str: 字母,数字长度任意符合驻留机制 字符串进行乘法时总长度不能超过20 特殊符号进行乘法时只能乘以0 代码块: 一个py文件,一个函数,一个模块,终端中的每一行 ...

  5. Python学习7——异常

    编写程序时,通常能够区分正常和异常情况.为了处理这些异常,可在每个可能出现异常的地方都使用上条件语句,但这样大大降低了程序的可读性,那么怎么解决哪?Python提供强大的替代解决方案——异常处理机制. ...

  6. .Net高级工程师面试题

    ----------高级开发工程师岗位职责: 1.完成平台系统新功能模块开发,维护现有产品,独立地设计.开发.实现和测试关键系统: 2.负责公司项目核心代码的编写: 3.根据产品需求进行业务功能的开发 ...

  7. 管家婆crm9.2 sp2升级问题求助及解决方案

    升级过程中发生如下问题: 弹出对话框1:升级完成,但是有错误产生. 弹出对话框2:升级数据库发生错误:An attempt was made to load an assembly from a ne ...

  8. Java list的实现类

    Java list的实现类 本文是根据博文整理 Java中,List接口一共有三个实现类:ArrayList.Vector和LinkedList. 其中ArrayList和Vector都是利用数组这一 ...

  9. vim之快捷键

    Vim 编辑器是一个基于命令行的工具,是传奇编辑器 vi 的增强版.尽管图形界面的富文本编辑有很多,但是熟悉 Vim 对于每一位 Linux 的使用者都能有所帮助——无论你是经验丰富的系统管理员,还是 ...

  10. java面试5

    1.如何将String类型转化Number类型?列举说明String str = "123"; Integer  num1 = new  Integer(str); int num ...