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 相关文章推荐
无数据库的详细域名查询程序PHP版(3)
Oct 09 PHP
超强分页类2.0发布,支持自定义风格,默认4种显示模式
Jan 02 PHP
php MySQL与分页效率
Jun 04 PHP
destoon实现VIP排名一直在前面排序的方法
Aug 21 PHP
php通过smtp邮件验证登陆的方法
May 11 PHP
PHP自定义多进制的方法
Nov 03 PHP
PHP进程通信基础之信号量与共享内存通信
Feb 19 PHP
PHP获取真实客户端的真实IP
Mar 07 PHP
原生php实现excel文件读写的方法分析
Apr 25 PHP
PHP封装的验证码工具类定义与用法示例
Aug 22 PHP
Laravel 实现数据软删除功能
Aug 21 PHP
如何在Laravel5.8中正确地应用Repository设计模式
Nov 26 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
php calender(日历)二个版本代码示例(解决2038问题)
2013/12/24 PHP
php实现Mysql简易操作类
2015/10/11 PHP
CI(Codeigniter)的Setting增强配置类实例
2016/01/06 PHP
PHP验证码生成原理和实现
2016/01/24 PHP
Yii2实现UploadedFile上传文件示例
2017/02/15 PHP
自制PHP框架之模型与数据库
2017/05/07 PHP
javascript 常用关键字列表集合
2007/12/04 Javascript
JSQL  一个 web DB 的封装
2010/05/05 Javascript
nodejs实现获取某宝商品分类
2015/05/28 NodeJs
最新最热最实用的15个jQuery插件汇总
2015/07/05 Javascript
jquery简单实现幻灯片的方法
2015/08/03 Javascript
jQuery树控件zTree使用方法详解(一)
2017/02/28 Javascript
jQuery插件HighCharts绘制2D圆环图效果示例【附demo源码下载】
2017/03/09 Javascript
JavaScript实现简单的四则运算计算器完整实例
2017/04/28 Javascript
webpack实用小功能介绍
2018/01/02 Javascript
angular2实现统一的http请求头方法
2018/08/13 Javascript
vue-cli中vue本地实现跨域调试接口
2019/01/16 Javascript
详解Vue源码学习之双向绑定
2019/04/10 Javascript
layui复选框的全选与取消实现方法
2019/09/02 Javascript
微信小程序之 catalog 切换实现解析
2019/09/12 Javascript
JS数组方法push()、pop()用法实例分析
2020/01/18 Javascript
零基础写python爬虫之爬虫的定义及URL构成
2014/11/04 Python
Python标准库之sqlite3使用实例
2014/11/25 Python
python3 实现的人人影视网站自动签到
2016/06/19 Python
django 在原有表格添加或删除字段的实例
2018/05/27 Python
Python根据已知邻接矩阵绘制无向图操作示例
2018/06/23 Python
Django 视图层(view)的使用
2018/11/09 Python
python 将日期戳(五位数时间)转换为标准时间
2019/07/11 Python
python twilio模块实现发送手机短信功能
2019/08/02 Python
纯CSS3编写的的精美动画进度条(无flash/无图像/无脚本/附源码)
2013/01/07 HTML / CSS
KTV的创业计划书范文
2014/02/02 职场文书
慰问敬老院活动总结
2014/04/26 职场文书
库房管理员岗位职责
2015/02/12 职场文书
幼师求职自荐信
2015/03/26 职场文书
MySQL 查询速度慢的原因
2021/05/25 MySQL
Python办公自动化之教你用Python批量识别发票并录入到Excel表格中
2021/06/26 Python