① php 命名空间函数和类中不能使用use吗
public 表示全局,类内部外部子类都可以访问;
private表示私有的,只有本类内部可以使用;
protected表示受保护的,只有本类或子类或父类中可以访问;
当实例化对象时,在外部只能使用其公共方法。不能使用protected和private方法。
而protected方法当子类继承时,可以调用父类的protected方法。或者在本类中使用,
② php7使用use引入命名空间提示语法错误
我也遇到了这个问题,我是这样解决的,我服务器装了5.2和7.2两个版本,可能两者有冲突,5.2不支持命名空间,不支持use和namespace,解决办法就是卸载5.2版本!!!
③ php匿名函数中的use有什么用
php文档中关于use的说明
所有支持命名空间的PHP版本支持三种别名或导入方式:为类名称使用别名、为接口使用别名或为命名空间名称使用别名。PHP5.6开始允许导入函数或常量或者为它们设置别名。
在PHP中,别名是通过操作符use来实现的.下面是一个使用所有可能的五种导入方式的例子:
Example#1使用use操作符导入/使用别名
<?php
namespacefoo;
useMyFullClassnameasAnother;
//下面的例子与useMyFullNSnameasNSname相同
useMyFullNSname;
//导入一个全局类
useArrayObject;
//importingafunction(PHP5.6+)
usefunctionMyFullfunctionName;
//aliasingafunction(PHP5.6+)
;
//importingaconstant(PHP5.6+)
useconstMyFullCONSTANT;
$obj=newnamespaceAnother;//实例化fooAnother对象
$obj=newAnother;//实例化MyFullClassname对象
NSnamesubnsfunc();//调用函数MyFullNSnamesubnsfunc
$a=newArrayObject(array(1));//实例化ArrayObject对象
//如果不使用"useArrayObject",则实例化一个fooArrayObject对象
func();//
echoCONSTANT;//
?>
④ thinkphp 命名空间什么情况下使用,use后面加载什么
命名空间其实只是为了加载文件更方便,tp的自动加载机制使用了它。
use 是继承类使用的关键词,当加载父类时,tp会更加use后面的命名空间查找对应的文件。tp会在多个目录进行查找,具体的可以查看tp文档的自动加载机制。
⑤ PHP的命名空间使用方法,求写实例
假设程序涉及文件的输入和输出,那么就要引入system.io这样一个命名空间。
命名空间的引入主要是为了写程序时代码书写简单。
比如说filestream这个类,他就是命名空间system.io下的一个类。如果不在文件开头引入system.io这个命名空间,那么在程序中用到这个类的时候就要写成system.io.filestream,相反,如果已经引入了这个命名空间就可以直接写filestream了。
命名空间就是将一类具有相似相关功能的类和接口等打包。
只要在文件的开头写上using
system.io;
就可以直接使用这个命名空间下的类。
⑥ 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子类怎么使用父类的use
你指的是导入命名空间的语法 use?
那不存在父类子类的说法。use只是将另外一个命名空间的定义(类或函数等)导入到当前命名空间使用。
每个文件(如果一个文件有多个命名空间,那每个命名空间导入一次)使用该语法导入一次,就可以一正常使用了。
如果一个文件里同时定义了两个类,同时只有一个命名空间,那在命名空间后导入一次就可以在两个类里同时使用了
PHP: 命名空间
⑧ php命名空间 use使用的问题:
命名空间是运行时解析的。use就相当于一种声明,并不解析和加载。在使用时就可以自动加载进来,那么这里你就可以理解为把db这个类库导入进来了,所以可以正常使用。