php的名称空间现在还不打好用吧,因为只有新版的php才支持名称空间,以前版本的php不解析这个东西的。跟java比,因该区别大了,java的名称空间是包,php的名称空间因该不严格这样,是逻辑包。
‘贰’ PHP 的use 命名空间 是什么意思
有点类似于 java 中的包机制,用来解决重名问题的,每一个命名空间都是独立的
给你举个例子吧,比如我现在想写两个类,名字都叫 Action
<?php
namespaceA;//定义命名空间
classAction{
//..
}
namespaceB;//定义第二个命名空间
classAction{
//..
}
use 关键字用于导入某个命名空间下的类, 如果我在B空间内想使用A空间中的Action类,就需要导入这个类才能使用(当然也可以指明空间前缀来使用)
namespaceB;
//在本空间中需要使用A空间中的Action类,使用use导入
useAAction;//导入,如果本空间中也有一个Action会出现错误,因为类重名了
useAActionasA_Action;//通过取别名的方式解决
$var=newA_Action;
‘叁’ php laravel命名空间问题,如图,为什么小写会报错非要大写才可以,可是我的文件夹就是小写的app啊
laravel在composer.json里配置了的
app目录的namespaces 就是大写的App,所以必须用大写的
‘肆’ 在php 命名空间 可以使用关键词作为函数名吗
PHP 命名空间提供了一种将相关的类、函数和常量组合到一起的途径,有点类似于文件管理器中,按照不同的文件夹来管理文件。根据 PHP 手册:
在PHP中,命名空间用来解决在编写类库或应用程序时创建可重用的代码如类或函数时碰到的两类问题:
用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。
为很长的标识符名称(通常是为了缓解第一类问题而定义的)创建一个别名(或简短)的名称,提高源代码的可读性。
在 php 命名空间中,语法等等都依旧遵循原有规则,因此,关键词不可以使用作为函数名。
‘伍’ php 命名空间是什么意思
从广义上来说,命名空间是一种封装事物的方法。在很多地方都可以见到这种抽象概念。例如,在操作系统中目录用来将相关文件分组,对于目录中的文件来说,它就扮演了命名空间的角色。PHP 命名空间提供了一种将相关的类、函数和常量组合到一起的途径。
具体举个例子,文件foo.txt可以同时在目录/home/greg和/home/other中存在,但在同一个目录中不能存在两个foo.txt文件。另外,在目录/home/greg外访问foo.txt文件时,我们必须将目录名以及目录分隔符放在文件名之前得到/home/greg/foo.txt。这个原理应用到程序设计领域就是命名空间的概念。
在PHP中,命名空间用来解决在编写类库或应用程序时创建可重用的代码如类或函数时碰到的两类问题:
用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。
为很长的标识符名称(通常是为了缓解第一类问题而定义的)创建一个别名(或简短)的名称,提高源代码的可读性。
‘陆’ php 命名空间为什么类前要加\
//是谁告诉你一定要加????只有在完全限定名称的情况下才需要加
//如果不加,将会在当前命名空间下寻找这个类
‘柒’ PHP为什么大小写规则是如此不规则
PHP的大小写敏感可以总结写“变量敏感,函数不敏感”,所有变量、常量、PHP.ini中配置参数都是敏感的,而函数、类、类中的方法、魔术常量,都是不区分大小写的,PHP6的命名空间还未测试,但应该是区分大小写的。
但我还是建议使用统统敏感的写法, 推荐大家始终坚持“大小写敏感”,遵循统一的代码规范,不定义大小相同的函数和方法。
‘捌’ 什么叫PHP空间
所谓php空间就是:解析或者能运行php程序的磁盘空间大小。比如:你在D盘安装了一个Apache服务器,那么Apache的服务目录能承载的大小就是php空间了。