Thinkphp入門 二 (46),thinkphp入門46_PHP教程

來源:互聯網
上載者:User

Thinkphp入門 二 (46),thinkphp入門46


【空操作處理】

看下列圖:

  使用者訪問一個不存在的操作—》解決:給每個控制器都定義個_empty()方法來處理

  第二個解決方案:定義一個空操作

【空模組處理】

我們使用一個類,但是現在這個類還沒有被include進來。

我們可以通過自動載入機制處理__autoload(),如果這個自動載入機制也沒有找到這個類,就會報錯。

即是請求一個空模組

  解決一:定義一個空的控制器、空模組

  解決方案二:

【給應用增加函數庫檔案】

在Common檔案夾裡面,便是放入我們函數庫檔案的地方

【模組分組】

  1. 控制器進行分組設定

  2. 視圖模板需要分組

  3. 組態變數需要分組

  4. 做配置config.php

【前置操作、後置操作】

控制器裡邊的方法在被調用的時候,在調用之前、或調用之後可以做一些額外的工作,就稱之為前置操作、後置操作

當我們請求這個網址:http://網址/index.php/Admin/Goods/zhanshi,在方法存在的情況下,這個動作在哪發生的,App.class.php 的exec()方法裡邊

  一個類裡邊有許多方法,都需要前置和後置操作,應該如何解決?

解決:

【跨模組調用】

執行個體化一個不存在的類,會通過__autoload()自動載入機制。

tp架構的__autoload()在哪?在Think.class.php

通過A()方法執行個體化控制器對象

  A(‘模組控制器’) 例如:A(‘Goods’)

  A(‘分組/控制器’) 例如:A(‘home/Ucenter’);

  A(‘項目://分組/控制器’) 例如:A(‘shop://home/Ucenter’);

  A()方法裡邊有嵌套調用import()方法,該方法協助我們獲得對應的控制器其,並require引入。A()方法順便直接new 執行個體化對象

R(“項目://分組/控制器/操作”)方法

  是把控制器的引入、執行個體化對象、方法的調用都給繼承好了。

  R(‘模組控制器/操作’) 例如:A(‘Goods’)

  R(‘分組/控制器/操作’) 例如:A(‘home/Ucenter/members’);

  R(‘項目://分組/控制器/操作’) 例如:A(‘shop://home/Ucenter/members’);

R()方法裡邊調用A()方法

A()方法裡邊調用import()方法

  A()方法使用

  R()方法使用

http://www.bkjia.com/PHPjc/1014184.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/1014184.htmlTechArticleThinkphp入門 二 (46),thinkphp入門46 【空操作處理】 看下列圖: 使用者訪問一個不存在的操作》解決:給每個控制器都定義個_empty()方法來處...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.