通過composer組件化學(xué)習(xí)PHP框架道路(一)

進度匯報與階段疑問(一)

  • 這個框架本打算暑假開始搭建虑椎,可最近心里老是想起這件事对碌,于是今天早上5:37起床開電腦把開頭的準備工作搞定了栅哀。

進度匯報

首先是composer項目的初始化我沒有用使用composer init会通,而且通過composer.json開始項目丑婿。然后新建app框架應(yīng)用目錄性雄,config項目配置目錄,public前端訪問目錄羹奉,framework自定義類庫秒旋。接著立刻開始github尋找合適了composer路由組件,考慮到初步學(xué)習(xí)就找了個加注釋僅有163行代碼的Macaw诀拭。然后前端建立index.php引入composer自動加載文件和config/routes.php路由配置文件迁筛,并在routes.php中使用Macaw調(diào)用不存在的靜態(tài)方法get,第一個參數(shù)'/index'炫加,在閉包函數(shù)中輸出字符串瑰煎。

這個時候通過修改hosts和vhost.conf將qframe.dev映射到本地public目錄,我這里使用的是apache俗孝。訪問該虛擬域名/index發(fā)現(xiàn)并沒有成功輸出字符串酒甸,但是訪問index.php/index 卻可以。這是因為apache的rewrite module開啟后還需要書寫.htaccess請求轉(zhuǎn)發(fā)文件赋铝,這個步驟是apache偽靜態(tài)的內(nèi)容插勤,我就直接把laravel的這個文件cp過來用了。

這時候用postman測試restful常用四大方法都沒問題,路由部分就結(jié)束了农尖。開始控制器和路由的關(guān)聯(lián)析恋。在app中新建Controllers并書寫基礎(chǔ)控制器和測試控制器,路由和控制器中的寫法和laravel使用的寫法類似盛卡,再次訪問網(wǎng)址直接看不到界面了助隧,這是因為composer.json沒有加入自動加載配置。添加autoload鍵值對并使用classmap數(shù)組加載控制器目錄滑沧,然后執(zhí)行dump-composer更新鎖文件即可并村。

接下來進入一個本可以很麻煩的階段:數(shù)據(jù)庫操作。由于RESTful以資源實體為目標滓技,我將Model修改為具體的Entities哩牍,也方便后期分層添加Model層的其他處理目錄。暫時我只能在控制器中連接數(shù)據(jù)庫進行CURD操作令漂,后期再來依賴注入膝昆。那么我們新建數(shù)據(jù)庫,數(shù)據(jù)表叠必,插入數(shù)據(jù)荚孵,然后在Entities中建立Article.php文章實體,composer.json的classmap數(shù)組加載該目錄挠唆。

在Article的first靜態(tài)方法中連接數(shù)據(jù)庫并返回查詢到的數(shù)據(jù)处窥,在控制器中直接Article::first()即可嘱吗。關(guān)于為什么使用靜態(tài)方法玄组,這一點我認為是防止后續(xù)還需要這段數(shù)據(jù),減少查庫操作谒麦。

階段疑問

.htaccess書寫用到了正則表達式且涉及到apache模塊的開發(fā)和使用問題俄讹,存在少許疑問。

Macaw.php一共就163行代碼绕德,暫時沒有完全理解使用原因患膛。

關(guān)于composer的autoload四種方式不太理解,以及spr-0在此處的兼容性使用耻蛇。

關(guān)于數(shù)據(jù)庫部分的配置和CURD操作封裝問題踪蹬,還需要學(xué)習(xí)一種composer組件,剛開始就不考慮這件事吧臣咖。

關(guān)于靜態(tài)方法在此處使用的原因跃捣,不知道自己的理解有哪里不妥當和不完善之處。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末夺蛇,一起剝皮案震驚了整個濱河市疚漆,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖娶聘,帶你破解...
    沈念sama閱讀 211,290評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件闻镶,死亡現(xiàn)場離奇詭異,居然都是意外死亡丸升,警方通過查閱死者的電腦和手機铆农,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評論 2 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來狡耻,“玉大人顿涣,你說我怎么就攤上這事≡秃溃” “怎么了涛碑?”我有些...
    開封第一講書人閱讀 156,872評論 0 347
  • 文/不壞的土叔 我叫張陵,是天一觀的道長孵淘。 經(jīng)常有香客問我蒲障,道長,這世上最難降的妖魔是什么瘫证? 我笑而不...
    開封第一講書人閱讀 56,415評論 1 283
  • 正文 為了忘掉前任揉阎,我火速辦了婚禮,結(jié)果婚禮上背捌,老公的妹妹穿的比我還像新娘毙籽。我一直安慰自己,他們只是感情好毡庆,可當我...
    茶點故事閱讀 65,453評論 6 385
  • 文/花漫 我一把揭開白布坑赡。 她就那樣靜靜地躺著,像睡著了一般么抗。 火紅的嫁衣襯著肌膚如雪毅否。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,784評論 1 290
  • 那天蝇刀,我揣著相機與錄音螟加,去河邊找鬼。 笑死吞琐,一個胖子當著我的面吹牛捆探,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播站粟,決...
    沈念sama閱讀 38,927評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼黍图,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了卒蘸?” 一聲冷哼從身側(cè)響起雌隅,我...
    開封第一講書人閱讀 37,691評論 0 266
  • 序言:老撾萬榮一對情侶失蹤翻默,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后恰起,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體修械,經(jīng)...
    沈念sama閱讀 44,137評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,472評論 2 326
  • 正文 我和宋清朗相戀三年检盼,在試婚紗的時候發(fā)現(xiàn)自己被綠了肯污。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,622評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡吨枉,死狀恐怖蹦渣,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情貌亭,我是刑警寧澤柬唯,帶...
    沈念sama閱讀 34,289評論 4 329
  • 正文 年R本政府宣布,位于F島的核電站圃庭,受9級特大地震影響锄奢,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜剧腻,卻給世界環(huán)境...
    茶點故事閱讀 39,887評論 3 312
  • 文/蒙蒙 一拘央、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧书在,春花似錦灰伟、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至义矛,卻和暖如春发笔,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背凉翻。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留捻激,地道東北人制轰。 一個月前我還...
    沈念sama閱讀 46,316評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像胞谭,于是被迫代替她去往敵國和親垃杖。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,490評論 2 348

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理丈屹,服務(wù)發(fā)現(xiàn)调俘,斷路器伶棒,智...
    卡卡羅2017閱讀 134,629評論 18 139
  • Composer Repositories Composer源 Firegento - Magento模塊Comp...
    零一間閱讀 3,956評論 1 66
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,756評論 25 707
  • 10:10 腦子里時常跳出很多想法 因為霧霾太過嚴重,單雙號出行彩库,給路面交通帶來的便利感肤无,真是讓人覺得幸福。 即便...
  • 這兩日天兒太任性 昨天暖暖的脈脈含情 今天的風(fēng)聲卻讓人膽戰(zhàn)心驚 接下來的幾天都沒有春的蹤影 冬在春的地盤如此放縱 ...
    張文莉閱讀 584評論 1 3