php中namespace use用法实例分析


Posted in PHP onJanuary 22, 2016

本文实例讲述了php中namespace use用法。分享给大家供大家参考,具体如下:

现在说这个感觉有点过时了,但是感觉用namespace的人还是不多,估计还是因为不习惯吧。

class把一个一个function组织起来,namespace可以理解成把一个一个class,function等有序的组织起来。个人觉得,namespace的主要优势有

第一,可以更好的管理代码
第二,文件一多,可以避免class,function的重名
第三,代码可读性增强了

1. 定义namespace

namespace userCenter;
//php代码
namespace userCenter\register;
//php代码
namespace userCenter\login {
 //php代码
}

命名空间不能嵌套或在同一代码处声明多次(只有最后一次会被识别)。但是,你能在同一个文件中定义多个命名空间化的代码,比较合适的做法是每个文件定义一个命名空间(可以是相同命名空间)。

2. 调用namespace

\userCenter\register; //绝对调用
userCenter\login; //相对调用
use userCenter\register; //引用空间
use userCenter\register as reg; //引用空间并加别名

3. 实例说明

login.class.php

<?php
namespace userCenter;
function check_username(){
 echo "login OK<br>";
}
class login{
 public function save(){
 echo "login had saved<br>";
 }
}
?>

regist.class.php

<?php
namespace userCenter\regist
{
 function check_username() {
 echo "regist OK<br>";
 }
 class regist{
 public function save(){
 echo "regist had saved<br>";
 }
 }
}
?>

test.php

<?php
require "login.class.php";
require "regist.class.php";
use userCenter\regist; //使用use调用空间
use userCenter\regist as reg; //as定义别名
echo \userCenter\check_username(); //绝对调用
$login = new \userCenter\login();
echo $login->save();
echo regist\check_username(); //相对调用
echo reg\check_username(); //别名调用
$regist = new reg\regist();
echo $regist->save();

使用use,比绝对调用要好一点,好比给class,function等加了一个前缀,这样看起来就比较清楚了。

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
递归列出所有文件和目录
Oct 09 PHP
收集的DedeCMS一些使用经验
Mar 17 PHP
php 文件上传代码(限制jpg文件)
Jan 05 PHP
php session和cookie使用说明
Apr 07 PHP
php数据库配置文件一般做法分享
Jul 07 PHP
php+mysqli数据库连接的两种方式
Jan 28 PHP
PHP进程同步代码实例
Feb 12 PHP
php实现发送微信模板消息的方法
Mar 07 PHP
PHP5.3以上版本安装ZendOptimizer扩展
Mar 27 PHP
thinkPHP实现将excel导入到数据库中的方法
Apr 22 PHP
PHP 多任务秒级定时器的实现方法
May 13 PHP
php实现微信原生支付(扫码支付)功能
May 30 PHP
PHP爬虫之百万级别知乎用户数据爬取与分析
Jan 22 #PHP
两种php实现图片上传的方法
Jan 22 #PHP
php+html5实现无刷新图片上传教程
Jan 22 #PHP
PHP中的随机性 你觉得自己幸运吗?
Jan 22 #PHP
PHP中的session安全吗?
Jan 22 #PHP
PHP下载远程图片并保存到本地方法总结
Jan 22 #PHP
PHP连接MYSQL数据库实例代码
Jan 20 #PHP
You might like
使用MaxMind 根据IP地址对访问者定位
2006/10/09 PHP
php中批量删除Mysql中相同前缀的数据表的代码
2011/07/01 PHP
PHP rawurlencode与urlencode函数的深入分析
2013/06/08 PHP
分享常见的几种页面静态化的方法
2015/01/08 PHP
laravel容器延迟加载以及auth扩展详解
2015/03/02 PHP
实例讲解php将字符串输出到HTML
2019/01/27 PHP
PHP addAttribute()函数讲解
2019/02/03 PHP
使用composer安装使用thinkphp6.0框架问题【视频教程】
2019/10/01 PHP
jquery 模式对话框终极版实现代码
2009/09/28 Javascript
Javascript 类与静态类的实现(续)
2010/04/02 Javascript
js克隆对象、数组的常用方法介绍
2013/09/26 Javascript
各浏览器对document.getElementById等方法的实现差异解析
2013/12/05 Javascript
javascript版的in_array函数(判断数组中是否存在特定值)
2014/05/09 Javascript
jQuery表格列宽可拖拽改变且兼容firfox
2014/09/03 Javascript
jquery中trigger()无法触发hover事件的解决方法
2015/05/07 Javascript
React-Native实现ListView组件之上拉刷新实例(iOS和Android通用)
2017/07/11 Javascript
vue脚手架搭建项目的兼容性配置详解
2018/07/17 Javascript
JS实现面向对象继承的5种方式分析
2018/07/21 Javascript
vue权限路由实现的方法示例总结
2018/07/29 Javascript
Vue 利用指令实现禁止反复发送请求的两种方法
2019/09/15 Javascript
JavaScript实现Tab标签页切换的最简便方式(4种)
2020/06/28 Javascript
[00:32]2018DOTA2亚洲邀请赛Liquid出场
2018/04/03 DOTA
浅谈编码,解码,乱码的问题
2016/12/30 Python
详解使用 pyenv 管理多个版本 python 环境
2017/10/19 Python
python 实现一个简单的线性回归案例
2020/12/17 Python
css3的动画特效之动画序列(animation)
2017/12/22 HTML / CSS
中国专业的综合网上购物商城:京东
2016/08/02 全球购物
澳大利亚潮流尖端的快时尚品牌:Cotton On
2016/09/26 全球购物
Woods官网:加拿大最古老、最受尊敬的户外品牌之一
2020/09/12 全球购物
J2SDK1.5与J2SDK5.0有什么区别
2012/09/19 面试题
C和C++经典笔试题附答案解析
2014/08/18 面试题
加强作风建设工作总结
2014/10/23 职场文书
党员查摆四风问题思想汇报
2014/10/25 职场文书
户外亲子活动总结
2015/05/08 职场文书
2016教师读书思廉心得体会
2016/01/23 职场文书
MySQL kill不掉线程的原因
2021/05/07 MySQL