如何設計自己的乙個mvc框架?
這個問題困擾了我很久,我相信大多數童鞋也都是用流行的哪些框架都很溜了(指邏輯控制,db操作以及一些validation等),但真正思考自己的mvc框架,思路不一定很清晰,或者說多多少少會做錯路。
在下也花了一些(很長~)時間來思考這個問題,總結一下思路,對layman的我們來說一起借鑑下。
基本思路:
1.任何框架的使用開發的web應用,最後都是通過使用者在瀏覽器輸入url位址才能訪問,url長什麼樣,這是切入點;
2.url有多種模式,最佳實踐的應該是pathinfo,因為對搜尋引擎友好,主要還是直觀書寫方便;
3.在單一入口index.php中首先進行處理,獲取到這個request_url,這之後可以開始框架流程了;
到此後面的思路就是怎麼對request_url各種截斷,並對應來獲取到controller類和呼叫類中的action了,
1<?php
2namespace framework;34
class516
17static
function getinstance($base_dir = '')
1823
return self::$instance;24
}2526function
dispatch()
2740 }
來看看controller類怎麼實現:
1<?php
2namespace framework;34
abstract
class
controller517
18function assign($key, $value)19
2223
function display($file = '')
2429
$path = $this->template_dir.'/'.$file;30
extract($this->data);
31include
$path;32
}33 }
到此就是基本的mvc設計思路了,後面補充上db的操作,順便運用下工廠模式。
如何批量替換相對位址為絕對位址?PHP
如果你的url鏈結是相對路徑 static mapi.css 你想把他批量替換成絕對路徑 那麼,你可以這樣做 寫乙個php檔案,把需要替換的 寫進去。這個 的意思就是,把 base url 替換成 這句話的意思是,把resource檔案裡的內容替換一遍,然後放到cloud資料夾裡。fileutil ...
相對位址轉絕對位址
發乙個相對位址轉絕對位址的函式 今天在研究jquery ajax功能的時候遇到乙個問題,通過 load url a load乙個網頁的鏈結後獲取到的位址資訊是相對於當前執行ajax程式的網頁的絕對位址。比如我在 c x a.html 網頁執行 www.romotc.com 網頁中有乙個鏈結 a bo...
URI URL URN,相對位址 絕對位址
uri uniform resource identifier 標準資源標示符,可以進一步分為定位器 名稱,或者二者兼具 通過一定規則解碼可以得到資源位置 在html中的href採用的是uri引用 uri引用分為絕對引用和相對引用 絕對引用以方案名和冒號開頭,其他為相對引用 url uniform ...