摘要:前言當(dāng)然從我們熟悉但不完全熟悉的說(shuō)起。下面是中的具體邏輯了。這里采用的是的方式。
前言
1. MVC 概覽 1.1. URL 規(guī)則當(dāng)然從我們熟悉(但不完全熟悉)的 MVC 說(shuō)起。簡(jiǎn)(zhi)單(jie)的描述.
上篇 目錄說(shuō)明中 提到的,這里不多說(shuō) 規(guī)則就是這樣,后面來(lái)說(shuō)其源碼
1.2. Controller && Actionsrc/Index/IndexController.php > function dbOperation() {}
doSql()); yield $this->r(0, "json string", $result); } }1.3. Model
從上的 namespace 得知 Model src/Model/Index/GetDBData
Controller 中 獲取 一個(gè) Model $demo
$demo->doSql() 獲取相關(guān)數(shù)據(jù)
當(dāng)然 這里 的 GetDBData 只是一個(gè)演示,正常來(lái)說(shuō) 應(yīng)該是個(gè) User 、 Shop 等等啥的
同樣 doSql() 也是演示而已, 想成 getAllUser(), getBoy() 啥的。
下面 是 Model 中的 具體 邏輯了。
這里 youzan 采用的是 SqlMap的 方式。至于為什么。看官網(wǎng)說(shuō)明吧。
當(dāng)然這個(gè) SqlMap 不是那個(gè)傳說(shuō)中的 Sql注入工具
2 ]; //demo.demo_sql_id1_1對(duì)應(yīng)resource/sql/demo.php中的配置 yield Db::execute("demo.demo_sql_id1_1", $data); } }
[ "table" => "TABLES", "sql" => " SELECT * FROM TABLES #LIMIT# ", ], ];1.4. View JSON View
Template View上面介紹 Model 時(shí)候 yield $this->r(0, "json string", $result);
返回的 json ‘View’
public function showTpl() { // -> src/Demo/View/Test/test.html $this->assign("str", "Zan Framework"); //給模板中的變量賦值 yield $this->display("Demo/test/test"); //輸出模板頁(yè)面 }2. MVC 相關(guān)配置 2.1 路由配置
resource/config/share/route.php
http://zanphpdoc.zanphp.io/MV...
"/index", // 默認(rèn) module 對(duì)應(yīng) src/Index目錄 "default_controller" => "index", // 默認(rèn) controller 對(duì)應(yīng) src/Index/IndexController "default_action" => "index", // 默認(rèn) action 對(duì)應(yīng) IndexController 中的 action 方法 "default_format" => "html", // 響應(yīng) content-type // "router_class" => "/namespace/router_class", // 自定義路由 ];2.2 session 啟用
resource/config/test/server.php
[ "run" => true, // true 啟用 session "store_key" => "demo.session.session", ], ];3. 源碼剖析
相關(guān)資料想了想下 還是 后面再說(shuō)吧, 繼續(xù)吊胃口
數(shù)據(jù)庫(kù)操作
SqlMap
zanPHP-MVC
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/26043.html
摘要:中的容器容器介紹容器中獲取一個(gè)類的實(shí)例容器中注冊(cè)于獲取類的單例函數(shù)理解面向接口開(kāi)發(fā)會(huì)幫助你更好的理解容器類容器幫助函數(shù)獲取類的實(shí)例注冊(cè)類的單例占位有待補(bǔ)充 PHP協(xié)程與yield 我說(shuō)不如你查閱相關(guān)文檔與資料 Iterator(迭代器)接口 生成器總覽在PHP中使用協(xié)程實(shí)現(xiàn)多任務(wù)調(diào)度 當(dāng)然 如果你暫時(shí) 懶的話 yield 當(dāng)成 return 關(guān)鍵字就行 zanphp中的命名空間 Za...
摘要:前言也許這是我們最關(guān)系的一個(gè)環(huán)節(jié)了。一個(gè)應(yīng)用簡(jiǎn)單來(lái)說(shuō)無(wú)非就是請(qǐng)求和相應(yīng)了。獲取你真的該補(bǔ)補(bǔ)協(xié)程的相關(guān)知識(shí)了。 前言 也許這是我們最關(guān)系的一個(gè)環(huán)節(jié)了。一個(gè)web應(yīng)用簡(jiǎn)單來(lái)說(shuō)無(wú)非就是請(qǐng)求和相應(yīng)了。獲取你真的該補(bǔ)補(bǔ) 協(xié)程 的相關(guān)知識(shí)了。不過(guò)。。不懂協(xié)程懂進(jìn)程~ 那就 當(dāng)成進(jìn)程來(lái)看 一個(gè)請(qǐng)求一個(gè)進(jìn) (xie) 程.懂線程~ 那就 當(dāng)成 線程來(lái)看 一個(gè)請(qǐng)求一個(gè)線 (xie) 程 分析 Requ...
前言 本系列源碼解讀已 http-demo 項(xiàng)目為例 目錄說(shuō)明 showImg(https://segmentfault.com/img/bVX8wy?w=452&h=431); 主要關(guān)心 圖片箭頭指向目錄http://zanphpdoc.zanphp.io/we... bin: 服務(wù)啟動(dòng)bin文件目錄 init: 應(yīng)用初始化相關(guān) resource: 配置文件目錄,具體配置見(jiàn) 項(xiàng)目配置 src...
摘要:獲取應(yīng)用并啟動(dòng)分析設(shè)置應(yīng)用名稱獲取本身實(shí)例想容器注冊(cè)單例設(shè)置應(yīng)用基礎(chǔ)路徑其他初始化工作初始化容器其他初始化工作創(chuàng)建根據(jù)前面的知識(shí)掃盲可知道返回的真身是位于分析繼承這里就把中的函數(shù)都放在分析了服務(wù)的啟動(dòng)主入口函 獲取應(yīng)用并啟動(dòng) php bin/httpd
摘要:前言因?yàn)楸鞠盗兄饕庾x源碼,所以環(huán)境采用作者自己搭建的適用系列的環(huán)境。 前言 因?yàn)楸鞠盗兄饕庾xzanphp源碼, 所以環(huán)境采用作者自己搭建的適用 zan 系列的 docker 環(huán)境。 https://github.com/cjeruen/zan-docker 環(huán)境相關(guān)說(shuō)明 本系列基礎(chǔ)目錄都在 ~/zan-code 目錄下進(jìn)行 如有變更 自行 切換目錄 安裝 docker 與 co...
閱讀 2817·2021-11-24 09:39
閱讀 3387·2021-11-19 09:40
閱讀 2257·2021-11-17 09:33
閱讀 3749·2021-10-08 10:04
閱讀 3037·2021-09-26 09:55
閱讀 1664·2021-09-22 15:26
閱讀 928·2021-09-10 10:51
閱讀 3124·2019-08-30 15:44