版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
5.8PHP自动加载类、范围操作解析符陈学平8PHP自动加载类9.3::访问父类覆盖成员和方法的实例9.2::访问静态成员、方法实例9范围解析操作符(::)目录018PHP自动加载类8PHP自动加载类__autoload()方法用于自动加载类。在实际项目中,不可能把所有的类都写在一个PHP文件中,当在一个PHP文件中需要调用另一个文件中声明的类时,就需要通过include把这个文件引入。不过有的时候,在文件众多的项目中,要一一将所需类的文件都include进来,需要在每个类文件开头写一个长长的包含文件的列表。那么能不能在使用类的时候,再把这个类所在的php文件导入呢?为此,PHP提供了__autoload()方法,它会在试图使用尚未被定义的类时自动调用。通过调用此函数,脚本引擎在PHP出错失败前有了最后一个机会加载所需的类。8PHP自动加载类__autoload()方法接收的一个参数,就是欲加载的类的类名,所以这时候需要类名与文件名对应,如Person.php,对应的类名就是Pserson。实例6_使用_autoload()方法自动加载类实例代码如下:Pserson.php<?phpclassPerson{private$name;private$age;
function__construct($name,$age){
$this->name=$name;
$this->age=$age;
}
functionsay(){ echo"我的名字叫:".$this->name."<br/>"; echo"我的年龄是:".$this->age;
}}?>8PHP自动加载类test.php<?phpfunction__autoload($class_name){require_once$class_name.'.php';}//当前页面Pserson类不存在则自动调用__autoload()方法,传入参数Person$p1=newPerson("张三","20");$p1->say();?>运行test.php,输出:我的名字叫:张三我的年龄是:20高版本PHP使用下面的方式调用spl_autoload_register(function($class){$file='classes/'.$class.'.class.php';if(file_exists($file)){require$file;}});029范围解析操作符(::)9.1范围解析操作符(::)范围解析操作符(::)是一对冒号,可以用于访问静态成员、方法和常量,以及被覆盖类中的成员和方法。当在类的外部使用::符号访问这些静态成员、方法和常量时,必须使用类的名字,如下面实例所示。039.2::访问静态成员、方法实例9.2::访问静态成员、方法实例<?phpClassPerson{
//定义静态成员属性
publicstatic$country="中国";
//定义静态成员方法
publicstaticfunctionmyCountry(){
//内部访问静态成员属性
echo"我是".self::$country."人<br/>";
}}//输出静态成员属性值echoPerson::$country."<br/>";//访问静态方法Person::myC输出结果中国我是中国人使用
::符号访问静态成员及方法参考PHP静态(static)。049.3::访问父类覆盖成员和方法的实例9.3::访问父类覆盖成员和方法的实例实例8使用::访问父类覆盖成员和方法实例代码如下:<?phpclassPerson{
var$name;
var$sex;
var$age;
functionsay(){
echo"我的名字叫:".$this->name."<br/>";
echo"性别:".$this->sex."<br/>";
echo"我的年龄是:".$this->age;
}}9.3::访问父类覆盖成员和方法的实例classStudentextendsPerson{
var$school;
functionsay(){
parent::say();
echo"我在".$this->school."上学";
}}//$P1=newPerson();
$P2=new
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年中铁工程设计咨询集团有限公司人员招聘笔试参考题库及详细答案解析
- 2026年塑料制品业行业市场调研报告及未来五至十年投资机会分析
- 2026中国跨境电商物流体系优化与市场发展前景研究报告
- 赛迪译丛2026年量子技术监测报告
- 2026自动驾驶高精地图数据合规采集与商业变现模式研究报告
- 2026共享经济模式创新及行业发展趋势研究报告
- 2026年游泳培训行业市场细分报告:成人游泳与儿童游泳
- 2026年旅游行业消费趋势报告及未来五年市场预测
- 2026年油田助剂创新报告及未来五至十年行业发展趋势报告
- 2026年智能家居行业市场报告及智能家居产品创新趋势分析
- 服装设计师作品组绩效衡量表
- 河南省部分高中2026-2027学年高二上学期9月联考数学试卷(含答案)
- 2025“外研社国才杯”“理解当代中国”外语能力综合能力赛项(英语组)模拟样卷
- 2026年河北高考历史真题(试卷+解析)
- 人教版2026-2027学年高中物理必修第三册第9章-13章期中测试卷(含解析)
- 2026年企业合规师初级题库及答案
- 2026年武汉市中考语文试卷(含答案)
- 司法辅助人员笔试完整题型、分值及真题答案
- 陕西科技大学教师专业技术职务评审工作实施办法(试行)
- 肿瘤患者输血支持(医学课件)
- 2026中国土地用途管制制度创新与实施效果评估报告
评论
0/150
提交评论