1. FoolPHPPHP 擴(kuò)展 MVC 框架

        聯(lián)合創(chuàng)作 · 2023-09-20 08:52

        FoolPHP是由PHP擴(kuò)展實(shí)現(xiàn)的輕量級(jí)MVC框架

        在php框架漫天飛的今天為什么還要自己再寫一個(gè)呢?

        首先,筆者寫這個(gè)項(xiàng)目的主要目的很單純:學(xué)習(xí)!筆者本人還很年輕,入行兩年一直以二手程序員自居,還有很多很多需要學(xué)習(xí)的地方,我始終堅(jiān)信閱讀前輩的代碼是一個(gè)非常不錯(cuò)的學(xué)習(xí)方式。FoolPHP是我在學(xué)習(xí)PHP擴(kuò)展開(kāi)發(fā)的過(guò)程中作為練習(xí)作業(yè)同時(shí)閱讀參考Yaf而實(shí)現(xiàn)的,所以有些代碼就是Yaf的。@Laruence

        其次,雖然已經(jīng)有很多優(yōu)秀的框架供開(kāi)發(fā)者選擇,但是我仍然認(rèn)為一個(gè)團(tuán)隊(duì)實(shí)現(xiàn)自己項(xiàng)目的框架是非常有意義的。筆者迄今為止待過(guò)的三個(gè)團(tuán)隊(duì)無(wú)一例外的都是在使用自己開(kāi)發(fā)的框架,這能夠讓開(kāi)發(fā)更好的掌控項(xiàng)目。

        特點(diǎn)

        • 非常簡(jiǎn)潔
        • 不限制任何類名、文件名、目錄,通過(guò)預(yù)處理的方式將類名及其所在的文件加入autoload
        • 類自動(dòng)加載
        • 原生php模板引擎

        安裝

        下載源碼后解壓,如解壓后目錄:FoolPHP-1.0.0
        cd FoolPHP-1.0.0
        phpize
        ./configure
        make && make install
        
        最后將extension=foolphp.so加入php.ini,重啟php-fpm或者其他fastcgi

        初始化項(xiàng)目

        1.新建一個(gè)目錄,如/websites,將FoolPHP源碼下tools目錄復(fù)制到/websites目錄下

        2.執(zhí)行sh tools/install.sh

        成功后/websites下多了一個(gè)src目錄,/websites/src結(jié)構(gòu):

        ├── application
        │   ├── controllers
        │   │   └── DemoController.php
        │   ├── models
        │   │   └── DemoModel.php
        │   └── views
        │   ├── Common
        │   │   ├── footer.tpl.php
        │   │   └── header.tpl.php
        │   └── Demo
        │   └── index.tpl.php
        ├── config
        │   ├── config.inc.php
        │   └── fool_php_class.map
        └── www
        └── index.php

        3./websites/src/www為web訪問(wèn)目錄,配置web服務(wù)器root :/websites/src/www,訪問(wèn):http://Domain/index.php?m=demo.index

        tools工具包

        1. install.sh新項(xiàng)目初始化腳本

        2. config.php預(yù)處理類配置文件,$application_path值為application目錄:/your_websites/src/application,$config_path為配置文件目錄:/your_websites/src/config,$scan_dir為自動(dòng)加載類掃描目錄,相對(duì)于$application_path的目錄名,如controllers、models、librarys

        3. create_map.php預(yù)處理類生成腳本,它會(huì)掃描config.php中配置的$scan_dir目錄下的php文件,生成"類名 => 文件路徑"的記錄到$config_path/fool_php_class.map文件中,這將是使用最頻繁的文件,當(dāng)新增/修改/刪除文件、類、目錄時(shí)都要重新執(zhí)行此腳本,否則將會(huì)運(yùn)行出錯(cuò)

          使用此腳本執(zhí)行 php create_map.php即可

        瀏覽 7
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        編輯 分享
        舉報(bào)
        評(píng)論
        圖片
        表情
        推薦
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        編輯 分享
        舉報(bào)
          
          

            1. 成人黄色毛片 | 老熟女亂伦一区二区三区视频观看 | 成人免费看AA片 | 特级婬片A片AAA毛片爱奴 | 性生交大片免费看一女三男 |