php常用关键字
1.final关键字 <?php //final关键字修饰的类 是最终的类不能被继承 class demo{ //final关键字修饰的成员方法 是最终版本的方法不能被重写 final public function say(){ echo "demo say"; } } class demo1 extends demo{ public function say(){ echo "demo1 say"; } } $d1 = new demo1(); $d1 -> say(); ?> 2. static 关键字 <?php //用于修饰类的成员属性和成员方法,静态的成员属性和静态的成员方法 //内部访问;外部可以不用实例化就可以直接访问 //为什么要用static关键字 //只能初始化一次 //访问方式:self::$name self::say() //访问控制:public protected private class demo{ //static 如果修饰成员属性。这个成员属性就是静态的成员属性 static public $name = "zhangsan"; static public $num = 0; //静态的成员属性只能初始化一次。所有实例化的对象访问的都是同一个静态成员属性 public function __construct(){ self::$num++; } //static 如果修饰成员方法。这个方法就是静态的成员方法 static public function say(){ //self 代表本类 return self::$name; //在类的内部访问静态成员属性 self::成员属性名 } } echo demo::$name; //在类的外部访问静态的成员属性。类名::成员属性名 echo demo::say(); //在类的外部访问静态的成员方法。类名::成员方法名 $d1 = new demo(); echo "<br />"; echo demo::$num; $d2 = new demo(); echo "<br />"; echo demo::$num; ?> 3.单例设计模式 <?php class DB{ static $obj = null; //声明一个静态成员属性,主要用静态成员属性只能初始化一次的特性。把它作为标识 //用于连接数据库 private function __construct(){ echo "mysql linked..."; } //静态的成员方法可以不需要对象就可以直接访问。这个方法用于得到对象 static function getObj(){ //判断静态成员属性是否是初始值 if(is_null(self::$obj)){ //如果是初始值。就实例化对象 self::$obj = new self(); //把对象赋值给静态的成员属性 } //把静态成员属性中的对象返回 return self::$obj; } public function select(){ echo "select data..."; } } var_dump(DB::getObj()); var_dump(DB::getObj()); var_dump(DB::getObj()); 4.const 关键字 <?php class demo{ //类里面定义常量用const //常量定义时就要赋初始值 //常量一但定义就不能修改 //如果是多个单词组成的常量名要用下划线分隔 const HOST = '127.0.0.1'; const DB_NAME = 'jike'; public function getConst(){ //在类的内部访问常量 self::常量名 return self::DB_NAME; } } //在类的外部访问常量 类名::常量名 echo demo::HOST; echo "<hr />"; $demo = new demo(); echo $demo -> getConst(); ?> 5.instanceof 关键字 <?php class demo{ } class demo1 extends demo{ } $demo = new demo(); $demo1 = new demo1(); //instanceof 可以用于判断一个对象是否由一个类或这个类子类实例化来的 var_dump($demo instanceof demo); var_dump($demo1 instanceof demo1); var_dump($demo instanceof demo1); var_dump($demo1 instanceof demo); ?>
php常用关键字的更多相关文章
- Java SE 基础:常用关键字
Java SE 基础:常用关键字 常用关键字表
- JAVA常用关键字
Java 中常用关键字: 一一解释(先以印象注明含义,若有错误或未填写的待用到后补充.更新):(蓝色为不确定部分) abstract : 虚类 boolean : 类型定义——布尔型 break : ...
- Oracle数据库常用关键字以及函数
常用关键字 insert into---插入数据 delete---删除数据 update---更新一条数据 select---实际工作中尽量不要写* set---设置某些属性 where---给执行 ...
- Selenium2Lib库之鼠标事件常用关键字实战
1.2 鼠标事件常用关键字 1.2.1 Click Button关键字按F5 查看Click Button关键字的说明,如下图: Click Button关键字 是用于点击页面上的按钮.参数locat ...
- Cucumber常用关键字
常用关键字(中英文对应) 对应的测试用例 Feature(功能) test suite (测试用例集) background(背景) Scenario(场景) test case(测试用例) Sc ...
- AppiumLibrary常用关键字
通过上一章节,open application关键字的使用,相信大家对手机自动化充满了兴趣,那么今天这一章节,主要介绍AppiumLibrary中常用关键字的使用. 一.实用函数 关键字 含义 实例 ...
- JAVA基础部分复习(六、常用关键字说明)
/** * JAVA中常用关键字复习 * final * finalize * finally * * @author dyq * */ public class KeyWordReview exte ...
- Robot Framework常用关键字介绍
常用关键字介绍 在学习一门编程语言的时候,大多教材都是从打印“hello world”开始.我们可以像编程语言一样来学习 Robot Framework.虽然通过 RIDE 提供“填表”一样的写测试用 ...
- python保留关键字和常用关键字
python保留关键字和常用关键字如下: 上图是python3中的关键字,python2.7中的关键字部分会有区别,具体在自己打印输出查看: import keyword print ' '.join ...
- oracle常用关键字和函数
数据库的增删改查: 增:insert into ... values(); 例:insert into p_emp values(sq_emp.nextval,,sysdate,,null,,); c ...
随机推荐
- python selenium中使用ddt进行数据驱动测试
- QT 默认环境路径配置方法
ubuntu 16.04 安装qt5.4之后还是默认使用系统自带的qt4.8,经查证需要在 在目录/usr/lib/x86_64-linux-gnu/qt-default/qtchooser里面的de ...
- node+fis3搭建
node安装: 到https://nodejs.org/en/download/releases下载编译好的包, 如:https://nodejs.org/download/release/v4.4. ...
- Oracle在存储过程中如何返回结果集
Oracle和Sqlserver不一样的地方有很多. 个人最深的体会是存储过程返回结果集,在Sqlserver中直接select查询就行,Oracle就不行了. 这里,就用最简单的例子说明存储过程返回 ...
- iOS 线程间共享资源添加排它锁
#import "ViewController.h" @interface ViewController () @property(nonatomic,strong)NSThrea ...
- self.automaticallyAdjustsScrollViewInsets
导航视图内Push进来的以“TableView”(没有ScrollView截图,就将就一下)为主View的视图,本来我们的cell是放在(0,0)的位置上的,但是考虑到导航栏.状态栏会挡住后面的主视图 ...
- uva12546. LCM Pair Sum
uva12546. LCM Pair Sum One of your friends desperately needs your help. He is working with a secret ...
- python集合
集合的创建:set()和frozenset() 区别:frozenset()创建不可变的集合,一旦创建其元素不可改变:而set()创建的集合中的元素可以通过一定的方法进行改变. >>> ...
- Ubuntu 16.04 install 搜狗输入法
1.#先添加以下源 sudo add-apt-repository ppa:fcitx-team/nightly 2.#添加源之后需要更新一下系统 sudo apt-get update 3.#开始安 ...
- ejabberd 在eclipse(erlide)中的配置、调试、运行
最近在折腾ejabberd,将ejabberd项目配置到eclipse中进行编译.调试等,现在将过程记下来,希望能帮助到需要的人. 准备 本次环境是在linux中进行,博主的linux是fedora2 ...