PHP中的use、命名空间的理解

简介:

看.Net中的命名空间和using

using Ddd.Core;
using Ddd.Core.Caching;
using Ddd.Core.Data;
using Ddd.Core.Domain.Customers;
using Ddd.Core.Domain.QiNiu;
using Ddd.Services.Events;
using System;
using System.Collections.Generic;
using System.Linq;

namespace Ddd.Services.QiNiu

看Java中的命名空间和import

package demo.jq.com.relativelayout;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

看PHP中的命名空间和use

namespace app\admin\model;
use think\Model;
use think\Db;

综上可以看出,命名空间就是相当于一个文件夹的路径。同一个命名空间下,不能有相同的类文件。同名的类文件可以存在于不同的命名空间下面。

用了命名空间,可以方便的调用其他文件夹下的文件。

只需要通过using、import、use引入命名空间下的文件即可。

然后就可以在方法中新建对象了。

use app\admin\model\LiveRecharge;
$LiveRecharge = new LiveRecharge();

看.Net或者Java,可以看出using、import可以引入一些系统自带的类文件。

模块用到哪个,引入相应的系统类即可。

Thinkphp5中使用了命名空间的机制,表面上看麻烦了,每个类都需要写命名空间,其实是方便了。

有了命名空间,能够更便捷的使用各个模块的类,可以方便的引入外部模块,可以方便的使用其他模块的Model,或者一些通用的类引入都便捷了。

让PHP更加的面向对象。

注意:use不等于require_once或者include,use的前提是已经把文件包含进当前文件。


本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/5406994.html,如需转载请自行联系原作者


相关文章
|
PHP
PHP命名空间
PHP语言命名空间复习笔记
77 0
PHP命名空间
|
PHP
PHP命名空间学习笔记
命名空间的支持版本:PHP 5 > 5.3.0,PHP 7 。 什么是命名空间 从广义上来说,命名空间是一种封装事物的方法。在很多地方都可以见到这种抽象概念。例如,在操作系统中目录用来将相关文件分组,对于目录中的文件来说,它就扮演了命名空间的角色。
1026 0
x3d
|
PHP
PHP旧系统基于命名空间重构经验
命名空间其实只是一个形式,最终目的是重构代码,但这个过程想要一蹴而就是不可能的。 一开始给了一个伪命题:基于ThinkPHP的重构(不要问为什么)。经过一段的实践,发现这是一个大错特错的思维方式,其中遇到的坑在此略过不表。
x3d
716 0
|
PHP
帝国备份王放到空间以后打开index.php显示空白页的解决办法
把帝国备份王传到空间上面打开 index.php 显示空白页 ,其他的php文件也都不行。 解决办法: php.ini配置问题,按下面修改即可解决:修改php.ini,将:short_open_tag 设为 On
2529 0