成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

探究Laravel4.2加載(一)— autoload

junbaor / 692人閱讀

摘要:以手上的為準(zhǔn),本篇只看自動(dòng)加載部分。入口文件在,打開看看。第三個(gè)參數(shù)是,將自己的自動(dòng)加載函數(shù)注冊(cè)到隊(duì)列之首。

以手上的4.2為準(zhǔn),本篇只看自動(dòng)加載部分。

入口文件在:/public/index.php,打開看看。


來到 /bootstrap/autoload.php


來到 /vendor/autoload.php


終于來到 /vender/composer/autoload_real.php

 $path) {
            $loader->set($namespace, $path);
        }

        // 登記以PSR-4方式加載的類們
        $map = require __DIR__ . "/autoload_psr4.php";
        foreach ($map as $namespace => $path) {
            $loader->setPsr4($namespace, $path);
        }

        // 登記直接加載的類們
        $classMap = require __DIR__ . "/autoload_classmap.php";
        if ($classMap) {
            $loader->addClassMap($classMap);
        }
        
        // 執(zhí)行加載
        $loader->register(true);

        // 加載一些文件,這些文件的目的是注冊(cè)一些函數(shù)
        $includeFiles = require __DIR__ . "/autoload_files.php";
        foreach ($includeFiles as $fileIdentifier => $file) {
            // 借用下面的方法去加載
            composerRequire78fadea5a0911ad1d52c374950318f50($fileIdentifier, $file);
        }

        // 到此自動(dòng)加載結(jié)束,層層跳回
        return $loader;
    }
}

function composerRequire78fadea5a0911ad1d52c374950318f50($fileIdentifier, $file)
{
    // 如果加載過了就不重復(fù)加載
    if (empty($GLOBALS["__composer_autoload_files"][$fileIdentifier])) {
        require $file;
    
        // 加載過之后給個(gè)標(biāo)記
        $GLOBALS["__composer_autoload_files"][$fileIdentifier] = true;
    }
}

博客:http://blog.lovemydeer.com/2016/03/22/laravel4dot2-autoload.html

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/21461.html

相關(guān)文章

  • PHP 之 Laravel 框架安裝及相關(guān)開源軟件

    摘要:被稱為簡(jiǎn)潔優(yōu)雅的開發(fā)框架,但第一次接觸此框架的人有不少都卡在了安裝上,其實(shí)在下只需要很簡(jiǎn)單的幾步就可以搞定,這里我們以下的環(huán)境為例。 Laravel 被稱為簡(jiǎn)潔、優(yōu)雅的PHP開發(fā)框架,但第一次接觸此框架的人有不少都卡在了安裝上,其實(shí)在 Linux 下只需要很簡(jiǎn)單的幾步就可以搞定,這里我們以 CentOS 下 PHP + Nginx + Mysql 的環(huán)境為例。 首先需要了解 Larav...

    fox_soyoung 評(píng)論0 收藏0
  • PHP autoload 機(jī)制詳解

    摘要:但現(xiàn)在問題來了,如果在一個(gè)系統(tǒng)的實(shí)現(xiàn)中,如果需要使用很多其它的類庫,這些類庫可能是由不同的開發(fā)人員編寫的,其類名與實(shí)際的磁盤文件的映射規(guī)則不盡相同。 PHP在魔術(shù)函數(shù)__autoload()方法出現(xiàn)以前,如果你要在一個(gè)程序文件中實(shí)例化100個(gè)對(duì)象,那么你必須用include或者require包含進(jìn)來100個(gè)類文件,或者你把這100個(gè)類定義在同一個(gè)類文件中——相信這個(gè)文件一定會(huì)非常大。但...

    psychola 評(píng)論0 收藏0
  • composer 自動(dòng)加載

    摘要:自動(dòng)加載是指在代碼中,不需要顯式地使用文件路徑將類庫文件包含進(jìn)來,便可使用該文件中定義的類庫。在里是這樣進(jìn)行配置的按照的規(guī)則,當(dāng)試圖自動(dòng)加載這個(gè)時(shí),會(huì)去尋找這個(gè)文件。最后,只要在項(xiàng)目中你所需要的所有類庫都會(huì)在適當(dāng)?shù)臅r(shí)候自動(dòng)載入。 Composer是PHP中用來管理依賴(dependency)關(guān)系的工具。你可以在自己的項(xiàng)目中聲明所依賴的外部工具庫(libraries),Composer...

    alighters 評(píng)論0 收藏0
  • Yii2中的代碼自動(dòng)加載機(jī)制

    摘要:中是如何實(shí)現(xiàn)代碼的自動(dòng)加載的入口腳本的以下兩行代碼其中的作用注冊(cè)為自動(dòng)加載函數(shù)。這個(gè)負(fù)責(zé)引入了一個(gè)類中的,隨后立即解除注冊(cè)。注冊(cè)中的為自動(dòng)加載函數(shù),并利用配置文件即目錄下的文件對(duì)這個(gè)自動(dòng)加載函數(shù)進(jìn)行了初始化。 1.基本知識(shí) Include與require 的作用: 當(dāng)一個(gè)文件被包含時(shí),其中所包含的代碼繼承了 include 所在行的變量范圍。從該處開始,調(diào)用文件在該行處可用的任何...

    Jaden 評(píng)論0 收藏0
  • Composer的Autoload源碼實(shí)現(xiàn)——啟動(dòng)與初始化

    摘要:任務(wù)是加載類的初始化頂級(jí)命名空間與文件路徑映射初始化和注冊(cè)。在實(shí)際情況下可能會(huì)出現(xiàn)這樣的情況。值得注意的是這個(gè)函數(shù)返回的是一個(gè)匿名函數(shù),為什么呢原因就是類中的等等都是的。。。關(guān)于匿名函數(shù)的綁定功能。 前言 在開始之前,歡迎關(guān)注我自己的博客:www.leoyang90.cn 上一篇文章,我們討論了 PHP 的自動(dòng)加載原理、PHP 的命名空間、PHP 的 PSR0 與 PSR4 標(biāo)準(zhǔn),有...

    MarvinZhang 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<