亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

搜索
博主信息
博文 56
粉絲 1
評(píng)論 0
訪問(wèn)量 76194
最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板
composer.json的編寫(xiě)使用
零龍
原創(chuàng)
1545人瀏覽過(guò)

composer.json的編寫(xiě)使用類(lèi)文件路由

1.傳統(tǒng)方式 include 或者 require

源碼示例:

  1. //1 .傳統(tǒng)方式 include 或者 require
  2. require 'app/controller/User.php';
  3. //引入app/controller/User.php文件
  4. use app\controller\User;
  5. //導(dǎo)入app\controller\user的類(lèi)和方法
  6. echo User::hello();
  7. //實(shí)例化app\controller\user.php中的User類(lèi)

示例圖:

2.注冊(cè)知道加載函數(shù)使用一個(gè)內(nèi)置的函數(shù)來(lái)完成

源碼示例:

  1. <?
  2. //注冊(cè)自動(dòng)加載函數(shù)
  3. //加載類(lèi)文件使用一個(gè)內(nèi)置的函數(shù)來(lái)完成
  4. spl_autoload_register(function($class){
  5. $path =str_replace('\\',DIRECTORY_SEPARATOR,$class);
  6. //獲取類(lèi)的路徑名稱(chēng)
  7. //替換'\'為'/'使用DIRECTORY_SEPARATOR
  8. $classFile = __DIR__ . '/'.$path.'.php';
  9. //生成一個(gè)完整的類(lèi)文件名
  10. require $classFile;
  11. //返回類(lèi)文件名
  12. //同等于:require 'app/controller/User.php';
  13. });
  14. use app\controller\User;
  15. echo User::hello();

示例圖:

3.使用composer中的自動(dòng)加載器

引入requireonce _DIR .’/vendor/autoload.php’;
對(duì)composer.json修改。使用files

示例:

  1. {
  2. "autoload": {
  3. "files": [
  4. "app/controller/User.php",
  5. "lib/Order.php",
  6. "lib/Goods.php"
  7. ]
  8. }
  9. }
  • 使用composer獲取類(lèi)文件名.使用files

  • 對(duì)composer.json修改。使用classmap

示例:

  1. {
  2. "autoload": {
  3. "classmap": [
  4. "app/controller",
  5. "lib"
  6. ]
  7. }
  8. }
  • 使用composer獲取文件目錄,使用classmap

  • 對(duì)composer.json修改。使用psr-4

示例:

  1. {
  2. "autoload": {
  3. "psr-4":{
  4. "app\\controller\\":"app/controller",
  5. "lib\\":"lib"
  6. }
  7. }
  • 使用composer獲取,推薦使用psr-4可以獲取多個(gè)目錄下的類(lèi)文件

源碼及注釋?zhuān)?/p>

  1. <?php
  2. //1.使用composer中的自動(dòng)加載器
  3. //調(diào)用的是composer中的字段加載器功能
  4. require_once __DIR__ .'/vendor/autoload.php';
  5. //composer.json:autoload:filese:可以加載任意位置的類(lèi)文件
  6. // 注冊(cè)完成后,在終端執(zhí)行命令:composer dump-autoload,使files字段生效
  7. //composer.json:autoload:classmap :類(lèi)映射,批量注冊(cè)類(lèi)
  8. //autoload :psr-4 類(lèi)的命名空間:類(lèi)所在的路徑目錄,進(jìn)行綁定,命名空間最后必須以“\\”空間分隔符結(jié)尾
  9. //只要是composer.json中的‘a(chǎn)utoload’字段的內(nèi)容發(fā)生變化,就必須執(zhí)行composer dumpautoload讓它注冊(cè)類(lèi)
  10. //2。注冊(cè)類(lèi)別名
  11. use app\controller\User;
  12. use lib\Goods;
  13. use lib\Order;
  14. //3.注冊(cè)類(lèi)別名
  15. //4.調(diào)用類(lèi)成員
  16. echo User::hello();
  17. echo "<hr>";
  18. echo Order::iNdex();
  19. echo "<hr>";
  20. echo Goods::iNdex();
  • 實(shí)例中使用了psr-4對(duì)composer.json修改??梢哉{(diào)用多個(gè)目錄中的類(lèi)文件。

composer快速實(shí)現(xiàn)一個(gè)迷你的php開(kāi)發(fā)框架

批改老師:天蓬老師天蓬老師

批改狀態(tài):合格

老師批語(yǔ):條理非常的清楚
本博文版權(quán)歸博主所有,轉(zhuǎn)載請(qǐng)注明地址!如有侵權(quán)、違法,請(qǐng)聯(lián)系admin@php.cn舉報(bào)處理!
全部評(píng)論 文明上網(wǎng)理性發(fā)言,請(qǐng)遵守新聞評(píng)論服務(wù)協(xié)議
0條評(píng)論
作者最新博文
關(guān)于我們 免責(zé)申明 意見(jiàn)反饋 講師合作 廣告合作 最新更新
php中文網(wǎng):公益在線php培訓(xùn),幫助PHP學(xué)習(xí)者快速成長(zhǎng)!
關(guān)注服務(wù)號(hào) 技術(shù)交流群
PHP中文網(wǎng)訂閱號(hào)
每天精選資源文章推送
PHP中文網(wǎng)APP
隨時(shí)隨地碎片化學(xué)習(xí)
PHP中文網(wǎng)抖音號(hào)
發(fā)現(xiàn)有趣的

Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號(hào)

  • 登錄PHP中文網(wǎng),和優(yōu)秀的人一起學(xué)習(xí)!
    全站2000+教程免費(fèi)學(xué)