<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                #7.自動加載類文件 在一個正常的項目中,會用到很多的類文件,我們就要寫很多航require的語句,這樣會讓代碼的冗余度加大,所以為了處理這個情況,php中有一個方法是自動加載類函數,自動加載方法。所以我們需要一個方法去實現加載指定的類文件。具體目標有 - 明確指明改項目中所有類存放目錄地址,這里就是控制器controllers,模型model,核心core這三個地方 - 判斷類文件在哪個目錄中,在找到后require過來,如果都不存在那么異常報錯 - 為什么不用__autoload方法來加載類文件,如果項目中前后臺都有autoload方法,可能會產生重定義錯誤。所以我們直接自己定義自動加載類的方法,然后在入口文件處通過spl_autoload_register將我們的類文件進行加載。 ```cpp |-core 框架核心目錄 | |-App.class.php URL重寫類 <?php /** * Created by PhpStorm. * User: find35.com * Date: 15/12/25 * Time: 上午10:53 */ class App { /** * 自動加載類方法 * @param $className * @throws Exception */ public static function myAutoloader($className){ //控制器類文件目錄 $controller = 'app/controllers/'.$className.'.class.php'; //模型類文件目錄 $model = 'app/models/'.$className.'.class.php'; //核心類文件目錄 $core = 'core/'.$className.'.class.php'; if(file_exists($controller)){ require_once $controller; }else if(file_exists($model)){ require_once $model; }else if(file_exists($core)){ require_once $core; }else{ throw new Exception('類文件不存在'); } } } ``` ```cpp |-index.php 項目前臺入口文件,單一入口 <?php /** * Created by PhpStorm. * User: find35.com * Date: 15/12/24 * Time: 下午5:15 */ echo "<meta charset='utf-8'>"; require_once 'core/App.class.php'; //注冊一個 spl_autoload_register(array('App','myAutoloader')); try{ App::run(); throw new Exception(); }catch(Exception $e){ echo $e->getMessage(); } ``` 此時我們在瀏覽器中輸入 ```cpp http://localhost/php_mvc/home/index ``` 如果展示如下,則表示自動加載類已經成功 ```cpp 這里是home控制器里的index方法 ``` 特別注意,創建類的時候,類的名稱和文件的名稱要是一致的。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看