簡體   English   中英

如何在PHP中組織require和require一次進行類導入

[英]How to organize require and require once in PHP for class import

我已經構建了一個PHP視頻上傳庫,旨在用於不同的框架。 ## HERE ##

但我想讓它優化像,我想要包括或制作\\

在類中調用require或require_once ,並且我希望配置類可用於我在運行時擁有的所有類...而無需顯式調用或生成一次require。

我怎么能這樣做,大多數PHP項目使用bootstrap類/文件來做到這一點,一些身體請幫助我。

我建議創建一個auto_load.php文件的方法,這個文件將包含要包含的文件,然后你可以將這個auto_load.php包含到你的庫的入口點文件/類中以加載所有必需的文件為您的圖書館工作。 這與composer工作方式和效率是一樣的。

您可以在加載類中查看psr-4標准。 http://www.php-fig.org/psr/psr-1/

require_oncerequire相同,但PHP會檢查文件是否已被包含,如果是,則不再包括(require),請參閱http://php.net/manual/en/function.require-once。 PHP

您可以創建自動加載功能 這樣您只需加載所需的庫。

基本的自動加載功能如下所示:

define('PATH_LIBRARY', '/some/path/lib/');
function myautoload($class_name){
  // you can do string manipulation to build the filename, for example
  $filename = strtolower($class_name);
  $filename = str_replace('_', '/', $filename);
  $filename = ucwords($filename);

  $filepath = PATH_LIBRARY.$filename.'.php';
  if (file_exists($filepath))
  {
    require_once($path);
    return true;
  }
}
spl_autoload_register('myautoload');

編輯代碼必須在代碼的開頭添加(通常在index.php頂部的文件中),所以后面的所有指令都會從中受益。 您可以通過檢查不同的目錄來改進它(例如,如果類名以“controller”或“model”開頭,則將路徑更改為相應的目錄)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM