Laravel три способа использовать свои собственные библиотеки

В то время как композитор позволяет повторно использовать много существующих библиотеки (например, packagist.org в), но мы все еще могли бы использовать некоторые несовместимые пакеты композитора или библиотеку. Также в проекте, мы можем создать библиотеку классов, и не может быть намерение сделать пакет композитора. На этот раз мы можем использовать свою собственную уникальную библиотеку следующим образом.

Увеличение непосредственно инстанцирован

Некоторые должны быть использованы непосредственно в категории проекта, может быть увеличен следующими способами Laravel

1. Создайте файл библиотеки классовapp/libs/class_libs/Message.php

2. Записать содержимое файла

<? PHP
 пространства имен Libs \ class_libs;    

Класс Message {
     общественного  статическая функция отображение () { 

    } 
}
 ?>

3. composer.jsonУвеличение каталог автозагрузки

" Автозагрузка " : {
     " classmap " : [
         " приложение / базы данных / Миграция " ,
         " приложение / базы данных / семена " ,
         " приложение / ЛИЭС / class_libs "    // 在这里增加
    ] 
},

4. Перейдите в каталог проекта, выполнить , composer dump-autoloadчтобы создать карту импорта

композитор свалка-автозагрузка

5. Используйте свой собственный класс импортированного напрямую позвонить Message::display()в

Этот метод также является способ повышения класса очереди, многие люди не знают Laravel класса обработчика очереди должны быть размещены где, на самом деле, в соответствии с описанным выше способом, appсоздать каталог в queuesкаталог, а затем разрешается непосредственно инстанцирован

Добавить функция может быть вызвана непосредственно

Некоторые люди хотели бы использовать v()вместо var_dump(), вы хотите сделать , это также очень легко в Laravel

1 / создать функциональный файлapp/libs/function_libs/helper.php

2 содержимое файла / записи

<? PHP 
функция v ($ тзд) { 
    var_dump ($ MSG); 
}
 ?>

3. Поместите файл композитор автоматически импортировать список

" Автозагрузка " : {
    " classmap " : [ 
       ... 
   ], 
   " файлы " : [
        " приложение / Libs / function_libs / helper.php " 
   ], 
},

4. Перейдите в каталог проекта, выполнить , composer dump-autoloadчтобы создать карту импорта

композитор свалка-автозагрузка

 

Или отображается в проекте requireфайла. Открыть app/start/global.php, добавить в конце:

требуют APP_PATH (). ' /Libs/function_libs/helper.php ' ;

Личные чувства эти два метода в порядке, если вы хотите , чтобы контролировать время файл загружен, и даже могут filter.phpдобавить следующий файл

App :: раньше (функция ($ запроса) { 
    требуется ( "{$ GLOBALS [ 'приложение'] [ 'path.base']} / приложение / ЛИЭС / function_libs / helper.php"); 
});

6. Функция непосредственно в проекте v('hello world');

Повышенные библиотеки несколько более сложных классов

Иногда библиотека не просто файл, так что следующий метод является более подходящим для библиотеки несколько файлов несколько структур.

1. Создать psr0 или psr4 стандартную структуру каталогов.

библиотеки 
    Myapp 
        Поиск (каталог банкнота является капитализированной) 
            search.php 
            SearchFacade.php 
            SearchServiceProvider.php 
        AnotherLib

Myapp/Search/Search.phpSearchПространства имен для класса Myapp\Search.

2. Измените композитор в автозагрузку

" Автозагрузка " : {
     " classmap " : [ 
        ...... 
    ] 
    , 
    " PSR-0 " : {
          " Myapp " : " приложения / библиотеки " 
    } 
},    

3. В проекте используется new Myapp\Search\Search()для создания экземпляра класса

резюме

Хотя Laravel никакого вида пути, чтобы заставить лучший, но есть определенные стандарты могут сделать проект четкой структуру, устраняя намного больше, чем стоимость развивать обмен.

рекомендация

отwww.cnblogs.com/-mrl/p/11277917.html