婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 解決Laravel自定義類引入和命名空間的問題

解決Laravel自定義類引入和命名空間的問題

熱門標簽:太原極信防封電銷卡 天津營銷電話機器人加盟代理 南寧crm外呼系統平臺 地圖標注入哪個科目 格陵蘭島地圖標注 事業單位如何百度地圖標注 熱線電話機器人 福泉電話機器人 電銷招聘機器人

1.問題描述

在Laravel中引入了一個第三方驗證碼類Code.class.php,在使用的時候發現如果不給這個類設置命名空間,那么需要在使用時用require引入這個文件,引入后在

new Code()時會報Class 'App\Http\Controllers\Admin\Code' not found,即找不這個類的錯誤,發現系統在當前文件的命名空間去找這個類。所以需要在new時類名前加\,即new \Code(),這樣會在根命名空間下找Code類就可以正常使用。

好奇心下給Code類添加了個命名空間namespace resources\org\code;,發現在使用時use resources\org\code\Code;,依然報錯找不到這個類。

2.解決過程

通過修改命名空間,改變類文件存放位置,都不能解決這個錯誤,百度后發現應該自定義類的加載問題,即命名空間使用正確,但是laravel沒有加載這個類文件。最后在csdn大神博客發現解決辦法。

在composer.json的autoload內的classmap項新增類包,

"autoload": {
  "classmap": [
    "database",
 "resources/org/code"http://添加自己的命名空間
  ],
  "psr-4": {
    "App\\": "app/"
   }
},

完成之后還需要在命令行使用composer命令

composer dump-autoload

做完這些再回到項目中,在使用Code類的文件中use resources\org\code\Code;就可以正確的new Code()了。

3.總結

在自定義類不使用命名空間時可以直接require類文件進行使用,但在new \Code時要加上\指明根命名空間。

當使用命名空間時要進行配置,告訴系統進行自動加載自定義類包,然后可以使用use。

另外經過測試發現當使用命名空間時僅使用require仍然報錯,還要指明命名空間才可以。但使用了use可以省去require。

以上這篇解決Laravel自定義類引入和命名空間的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • Laravel5.1框架路由分組用法實例分析
  • laravel框架分組控制器和分組路由實現方法示例
  • laravel中命名路由的使用方法
  • Laravel 5框架學習之路由、控制器和視圖簡介
  • Laravel中間件實現原理詳解
  • Laravel框架實現利用中間件進行操作日志記錄功能
  • Laravel獲取當前請求的控制器和方法以及中間件的例子
  • Laravel 6 將新增為指定隊列任務設置中間件的功能
  • 淺談Laravel中的三種中間件的作用
  • Laravel 4 初級教程之視圖、命名空間、路由
  • 修改Laravel自帶的認證系統的User類的命名空間的步驟
  • laravel框架路由分組,中間件,命名空間,子域名,路由前綴實例分析

標簽:寶雞 阿克蘇 通化 香港 佳木斯 自貢 郴州 金華

巨人網絡通訊聲明:本文標題《解決Laravel自定義類引入和命名空間的問題》,本文關鍵詞  解決,Laravel,自定義,類,引入,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《解決Laravel自定義類引入和命名空間的問題》相關的同類信息!
  • 本頁收集關于解決Laravel自定義類引入和命名空間的問題的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 临江市| 曲阜市| 保亭| 黔东| 怀安县| 阜南县| 东乌珠穆沁旗| 永康市| 历史| 桂平市| 盘山县| 台湾省| 磐安县| 灵寿县| 平山县| 克什克腾旗| 邹平县| 庐江县| 商洛市| 九台市| 青龙| 乌什县| 奉贤区| 舒城县| 延庆县| 马尔康县| 台湾省| 娄烦县| 广昌县| 兴海县| 张北县| 敦煌市| 锡林郭勒盟| 吴桥县| 闽侯县| 西充县| 合江县| 阜城县| 亳州市| 新营市| 高雄县|