PDO(php data object)扩展类库为php访问数据库定义了轻量级的、一致性的接口,它提供了一个数据库访问抽象层,这样,无论你使用什么数据库,都可以通过一致的函数执行查询和获取数据,大大简化了数据库的操作,并能够屏蔽不同数据库之间的差异,使用pdo可以很方便地进行跨数据库程序的开发,以及不同数据库间的移植,是将来php在数据库处理方面的…
class_exists — 检查类是否已定义 格式: bool class_exists ( string $class_name [, bool $autoload ] ) 如果由 class_name 所指的类已经定义,此函数返回 TRUE,否则返回 FALSE。 默认将会尝试调用 __autoload,如果不想让 class_exists(…
异常经常被用来处理一些在程序正常执行中遇到的各种类型的错误。比如做数据库链接时,你就要处理数据库连接失败的情况。使用异常可以提高我们程序的容错特性,从而使我们的应用程序更加的稳定和健壮。 PHP5 增加了类似其他语言的异常处理模块。在PHP代码中所产生的异常可被 throw 语句抛出并被 catch 语句捕获。需要进行异常处理的代码都必须放入到 t…
抽象方法和抽象类 当类中有一个方法,他没有方法体,也就是没有花括号,直接分号结束,象这种方法我们叫抽象方法,必须使用关键字abstract定义。 如: public abstract function fun(); 包含这种方法的类必须是抽象类也要使用关键字abstract加以声明。(即使用关键字abstract 修饰的类为抽象类) 抽象类的特点:…
PHP串行化可以把变量包括对象,转化成连续bytes数据,你可以将串行化后的变量存在一个文件里或在网络上传输,然后再反串行化还原为原来的数据。 什么时候使用串行化? 在网络中传输对象的时候 向数据库中保存文件的时候。 全部串行化 1.serialize(对象名) 将指定的类对象串行化 $str=serialize($per) //将per对象串行化…
__clone 魔术方法 -- 深度克隆对象 有时可能需要根据一个对象完全克隆出一个一模一样的对象,而且克隆以后,两个对象互不干扰。 格式: $obj = new Class(); $objcopy = clone $obj; 魔术方法: __clone() 当执行 clone 克隆时会自动调用的方法,主要用于解决对象中特殊属性的复制操作。 &nb…
static 关键字 -- 定义静态变量或方法 static关键字表示静态的意思,用于修饰类的成员属性和成员方法(即静态属性和静态方法)。 类中的静态属性和方法不用实例化(new)就可以直接使用类名访问。 格式: 类::$静态属性 类::静态方法 在类的方法中。不能this来引用静态变量或静态方法,而需要用self来引用。 格式: self::$静…
类的继承性,是指一个新的子类可以从父类中派生出来,并且自动拥有父类的所有方法和属性。 继承类的应用 PHP只支持单继承,不允许多重继承。一个子类只能有一个父类,不允许一个类直接继承多个类,但一个类可以被多个类继承。 可以有多层继承,即一个类可以继承某一个类的子类,如类 B 继承了类 A,类C 又继承了类 B,那么类 C 也间接继承了类 A。 cla…
封装性是面向对象编程中的三大特性之一,封装就是把对象中的成员属性和成员方法加上访问修饰符,使其尽可能隐藏对象的内部细节,以达到对成员的访问控制(切记不是拒绝访问)。 public private protected三者区别 PHP5支持如下3种访问修饰符: public (公有的 默认):在类的内部、被继承的子类、外部都可以访问 private (…
面向对象的程序设计思路是现代程序设计由面向过程演变面向对象的必然趋势,所以面向对象的而设计思路必然有它不同的时代意义,必然有着不同面向过程的不同历史使命,而php 5以后成功添加面向对象的设计思路其实是必然的过程。面向对象的设计主要思路就是将程序和数据封装在一个叫对象的基本单位之中来提高重用性,灵活性和可扩展性。他同面向过程和函数式编程的设计思路一…