PHP5 面向对象(学习记录)

yipeiwu_com6年前PHP代码库
1,继承extends 只能单继承
public protected private 属性
__construct()
__destruct()
__get()读取私有成员
__set($n,$v) 设置私有成员
2,访问父类函数 :: (c++里面也叫作用域符)
7
3,重载 和 父类名字相同的 函数

4,抽象类 abstract 必须继承 不能被实例话 并且 必须要重写抽象函数 只要类中有一个函数是静态的 那么类必须为静态

5,常用关键字
1,final 定义类的时候 类 不能被继承 定义 函数时 函数 不能 重载
2,self 用来访问未实例化类中的属性或者方法 (静态或者常量) 使用方法 self::属性
3,static 定义静态成员或者方法只会在内存出现一次 (静态方法内 不能出现非静态内容)
4,const 定义常量 只能修饰成员属性 修饰的常量 不加 $
6,接口的应用 interface接口定义关键字 implements引用
接口:全部为抽象方法,不用加 abstract 属性 应该为常量
interface Demo{}
class T implements Demo{} 可以引用多个接口
先继承后接口 class a extends root implements Demo{}
接口继承接口 interface D extends Demo

7,多态 php 是 弱类型语言 所以支持不是很完美
instanceof 测试 一个实例是否来自一个类 example: a{} $c = new a; if($c instanceof a)
8,对象 作为参数传递 给函数 时 不运行 构造函数 并且 并非是复制副本,而是传递对象地址

9,对象 描述配置 __tostring(){内容} 直接echo 对象

10,对象 异常处理 __call($name,$value) 调用不存在的方法名时 自动吸收 你的错误 并且显示$name 和 错误参数的 值

11,对象克隆 __clone()放在 类里面 clone关键字 (相当与c++的拷贝函数)

12,自动载入 function __autoload($class_n){
include($class_n.'php');
} 当自行 new 一个类时 自动载入 inlcude()一个类

相关文章

php下使用无限生命期Session的方法

在PHP4.0中加入了对Session的支持,方便了我们很多程序,比如购物车等等!    在很多论坛中,Session也用于处理用户的登陆,记录下用户名和密码,使得用户不必每次...

分享PHP计算两个日期相差天数的代码

本文实例讲述了php计算两个日期相差天数的方法。分享给大家供大家参考。具体实现方法如下: <?php $date1 = date( 'Y-m-d' ); $date2...

PHP中echo,print_r与var_dump区别分析

本文较为详细的分析了PHP中echo,print_r与var_dump区别。分享给大家供大家参考。具体分析如下: 三者都是具有输出功能的php语句,但print_r(expression...

php导入csv文件碰到乱码问题的解决方法

今天主要是想写一个php导入csv文件的方法,其实网上一搜一大把。都是可以实现怎么去导入的。但是我导入的时候遇到了两个问题,一个是在windows上写代码的时候测试发生了乱码问题,然后解...

php allow_url_include的应用和解释

因为这个原因,许多安全研究人员建议在php.ini配置中禁用指向allow_url_fopen。不幸的是,许多推荐这种方法的人,并没有意识到,这样会破坏很多的应用并且并不能保证100%的...