PHP类的自动加载函数如何使用?PHP类的自动加载使用实例

2022-12-16 469

PHP类的自动加载函数如何使用?php类的自动加载使用实例!之前学习了很多有关PHP面向对象中的魔术方法,但是今天在学习__autoload()自动加载魔术方法的时候,在实例中使用__autoload()时,报错提示已经被PHP废弃,查看了一下PHP手册才明白7.2以上版本中已经将__autoload()废弃掉,而被新的函数spl_autoload_register()所替代。

PHP类的自动加载函数如何使用?PHP类的自动加载使用实例
PHP类的自动加载函数如何使用?PHP类的自动加载使用实例

为什么要在使用类的自动加载?

当我们在PHP的项目当中有时候会为每一个类写一个文件,如果我们写了多个类,就有很多个类文件,如果我们要引用这些类文件的时候,我们需要一个一个的使用include_once引入,这样十分的浪费时间和麻烦,所以智能的PHP就专门为我们内置自动加载类的函数spl_autoload_register()

spl_autoload_register函数如何使用?

spl_autoload_register()函数可以注册任意数量的自动加载器,当使用尚未被定义的类(class)和接口(interface)时自动去加载。通过注册自动加载器,脚本引擎在 PHP 出错失败前有了最后一个机会加载所需的类。像class一样的结构都可以以相同方式自动加载。包括类、接口等。

PHP类的自动加载函数使用实例代码:

以下是新建的两个类文件:

playobject.php代码:

<?php

class playobject{
    private $cont;
    function __get($test){
        return '浩沐资源网是世界第一资源网!';
    }
}

studyobject.php代码:

<?php

class studyobject{
    public $studentName;
    public $studentAge;
    function __construct($studentName,$studentAge)
    {
        $this->studentName = $studentName;
        $this->studentAge =$studentAge;
    }
    function __toString()
    {
            return $this->studentName.'浩沐资源网的年龄是:'.$this->studentAge;
    }
}

?>

然后下面是使用spl_autoload_register函数对类文件进行自动加载的代码:

<?php
//自动加载类文件的方法
spl_autoload_register(function ($class_name) {
    require_once $class_name.'.php';
});

$playobject = new playobject();
echo $playobject->cont;
echo '<hr>';
$studyobject = new studyobject('浩沐',12);
echo $studyobject->__toString();

?>

在我们使用了spl_autoload_register()函数后,就成功的将类文件加载到了以上的代码块中,并成功的实例化并调用了相关的成员方法。

spl_autoload_register函数在PHP面向对象当中还是比较重要的,学会了使用类文件的自动加载,能为我们在类使用时节约更多的时间和精力。后续浩沐资源网将记载更多关于PHP面向对象的学习笔记。

声明: 本站仅提供资源学习下载,资源费用仅为赞助站长的整理费,不代表资源自身价值也不包含任何服务。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
本站提供的资源来自网络,版权争议与本站无关,所有内容及软件的文章仅限用于学习和研究目的。
如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。侵删请致信E-mail:duhaomu@163.com

浩沐资源网 开发技巧 PHP类的自动加载函数如何使用?PHP类的自动加载使用实例 https://www.dhaomu.com/37628.html

相关文章

发表评论
暂无评论
  • 0 +

    访问总数

  • 0 +

    会员总数

  • 0 +

    文章总数

  • 0 +

    今日发布

  • 0 +

    本周发布

  • 0 +

    运行天数

浩沐资源网-打造全网优质免费教程资源分享网站!