class類 - ThinkPHP 3.2.3,我有一個class,應該放在哪裡?

來源:互聯網
上載者:User
關鍵字 php thinkphp class類

我有一個class,class的名字叫get_user_info,這個class裡有很多function,我應該把這個class放在哪裡,才能在Controller中調用到這個class裡的function? 比如在List這個Controller中。

其實,只有一個問題,能不能放在Common檔案夾下面

回複內容:

我有一個class,class的名字叫get_user_info,這個class裡有很多function,我應該把這個class放在哪裡,才能在Controller中調用到這個class裡的function? 比如在List這個Controller中。

其實,只有一個問題,能不能放在Common檔案夾下面

/ThinkPHP/Library/Org下建個自己的目錄;扔裡面寫好命名空間即可;
好吧;我拿項目舉個例子;
以分頁來說;
樣本項目:http://git.oschina.net/shuaibai123/thinkbjy
分頁類:http://git.oschina.net/shuaibai123/thinkbjy/blob/master/ThinkPHP/Library/Org/Bjy/Page.class.php
調用分頁類第159行:http://git.oschina.net/shuaibai123/thinkbjy/blob/master/Application/Common/Model/ArticleModel.class.php

首先是要定義分頁類的命名空間:namespace OrgBjy;
然後調用這個分頁類的時候就是:$page=new OrgBjyPage($count,$limit);

你要使用的方式同理;自己可以定義一個目錄;定義好命名空間;使用的時候;對應好命名空間執行個體化就可以了;

再或者以官方的String類來講解:/ThinkPHP/Library/Org/Util/String.class.php
這裡面有一些用來處理字串的方法;比如說擷取隨機數、字串截取等;你可以查看官方的原始碼來理解;

類名有點奇怪,看著挺像一個模型的,是先有的模型類,再有的thinkphp項目?

如果是和我說的一致,感覺有3個辦法

  1. 重構一次代碼,符合thinkphp的model規範

  2. 看下官方的類庫擴充,看看是否可以整合進來,因為你這可能還牽涉到資料庫操作,具體就要看你如何調試了

  3. 最壞的打算就如 KingzChenung 所說include也可以

get_user_info這個是類的名字還是方法的名字,目前看著好像是方法的名字啊,如果是類的話就可以根據命名空間區分出來一個utils這樣的命名空間來存放這個類,具體的要看你的命名空間根目錄是怎樣了

可以在controller同級目錄建立自訂目錄,類改命名空間,然後就能引用。其實在其他地方也是隨便你的,大不了自己include,最多不符合架構規範而已。

作為第三方外掛程式引入呢

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.