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 ...
随机推荐
- JSON相关基础知识
JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持),从而可以在不同平台间进行数据 ...
- 【Java EE 学习 51】【Spring学习第三天】【cglib动态代理】【AOP和动态代理】【切入点表达式】
一.cglib动态代理 1.简介 (1)CGlib是一个强大的,高性能,高质量的Code生成类库.它可以在运行期扩展Java类与实现Java接口. (2) 用CGlib生成代理类是目标类的子类. (3 ...
- SASS 编译后去掉缓存文件和map文件
编译的时候加参数 --sourcemap=none --no-cache 就可以了
- poj 3728(LCA + dp)
题目链接:http://poj.org/problem?id=3728 思路:题目的意思是求树上a -> b的路径上的最大收益(在最小值买入,在最大值卖出). 我们假设路径a - > b ...
- EventBus 二
前一篇简单演示了EventBus的onEventMainThread()函数的接收,其实EventBus还有另外有个不同的函数,他们分别是: 1.onEvent2.onEventMainThread3 ...
- ios10新特性-UserNotification
引言:iOS的通知分本地通知和远程通知,iOS10之前采用的是UILocationNotification类,远程通知有苹果服务器进行转发,本地通知和远程通知其回调的处理都是通过AppDelegate ...
- 【CentOS】磁盘管理与vim编译器
一.查看硬盘或目录容量 1.df [-hmkiT] -h 查看系统磁盘使用情况 -m 使用MBytes显示结果 -k 使用KBytes显示结果 -i 查看inode -T 查看Type 2 ...
- python 线程之 threading(三)
python 线程之 threading(一)http://www.cnblogs.com/someoneHan/p/6204640.html python 线程之 threading(二)http: ...
- Delphi 操作Flash D7~XE10都有 导入Activex控件 shockwave
http://www.cnblogs.com/devcjq/articles/2906224.html Flash是Macromedia公司出品的,用在互联网上动态的.可互动的shockwave.它的 ...
- 分布式缓存技术memcached学习(二)——memcached基础命令
上文<linux环境下编译memcahed>介绍了memcahed在linux环境下的安装以及登录,下面介绍memcahed的基本命令的使用. Add 功能:往内存增加一条新的缓存记录 语 ...