随笔分类 -  PHP / 类和对象

摘要:不希望在每个页面中包含所有类定义,而希望只是动态加载这个页面中必要的类定义. 通常情况下,实例化一个未定义的类时,PHP会中止运行,指出一个致命错误,因为它无法找到你要的类。因此,一般会加载一个页面可能用到的所有类,而不论是否会真正调用这些类。 这就带来一个副作用,会增加处理时间,因为PHP必须解析 阅读全文
posted @ 2025-01-08 04:08 kksllss 阅读(2) 评论(0) 推荐(0) 编辑
摘要:要检查作为函数参数传入的一个值是否是某个特定类的实例,可以在函数原型中指定类: public function add(Person $person){ //将$person增加到地址 } 其他情况下,可以使用instanceof操作符: $media = get_something_from_ca 阅读全文
posted @ 2025-01-08 02:21 kksllss 阅读(2) 评论(0) 推荐(0) 编辑
摘要:希望检查一个对象,查看它有哪些方法和属性,从而可以编写适用任何通用对象的代码,而不论对象的具体类型是什么。 可以使用Reflection类探查对象的信息。要快速查看类的信息,可以调用Refection::export(): class Person{ public $name; protected 阅读全文
posted @ 2025-01-08 02:07 kksllss 阅读(2) 评论(0) 推荐(0) 编辑
摘要:希望控制使用serialize()和unserialize()处理对象时对象的行为。如果需要建立和关闭与远程资源的连接(如数据库、文件和Web服务),这会很有用。 class LogFile{ protected $filename; protected $handle; public functi 阅读全文
posted @ 2025-01-08 01:45 kksllss 阅读(2) 评论(0) 推荐(0) 编辑
摘要:在对象中定义方法并能访问这些方法,而不需要实例化对象。 将方法声明为static: class Format { public static function number($number, $decimals = 2, $decimal = '.',$thousand = ','){ return 阅读全文
posted @ 2025-01-08 00:46 kksllss 阅读(6) 评论(0) 推荐(0) 编辑
摘要:为类定义常量,而不是全局常量。 类常量的定义类似于类属性定义,不过要使用const标签: class Math{ const pi=3.14159;//通用 conste = 2.71828;//常量 $area = Math::pi * $radius * $radius; } 类似静态属性,可以 阅读全文
posted @ 2025-01-07 18:44 kksllss 阅读(3) 评论(0) 推荐(0) 编辑
摘要:创建一个抽象(abstract)类,换句话说,就是不能直接实例化的类,不过可以作为子类的一个公共基类。 将类标志为abstract: abstract class Database{} 必须至少在这个类中定义一个抽象方法。可以在方法定义前面加上abstract关键字: abstract class 阅读全文
posted @ 2025-01-06 21:08 kksllss 阅读(2) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示