類別庫自動載入

在業務越來越複雜的情況下一個腳本需要include或require的類別檔案也會越來越多,

#這時需要用到__autoload()方法在實例化物件的時候自動進行載入類別檔案

#1,__antoload()的使用

新init.php檔,程式碼如下:

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018/3/3 0003
 * Time: 下午 3:39
 */
header('content-type:text/html;charset=utf8');
function __autoload($className){
    //自动加载类名为className,文件名为./$className.class.php的文件
    require "./$className.class.php";
}

#2,測試

##新建student類別和teacher類別

Student.class.php程式碼如下:

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018/3/3 0003
 * Time: 下午 3:41
 */
class Student{
    public function __construct()
    {
        echo "学生类已加载";
    }
}

Teacher.class.php程式碼如下:

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018/3/3 0003
 * Time: 下午 3:41
 */
class Teacher{
    public function __construct()
    {
        echo "老师类已加载";
    }
}

建立index.php檔案測試是否需要同時引進對應的類別檔案才可以載入對應的建構子

程式碼如下:

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018/3/3 0003
 * Time: 下午 3:43
 */
require './init.php';
$student=new Student();
echo "<br>";
$teacher=new Teacher();

在瀏覽器運行index.php檔案效果展示如下:

微信图片_20180303155335.png

#

繼續學習
||
<?php echo "自动加载的使用";