qfdw.xyz sq.php,GitHub - STORMSQ/sqphp: 練習用框架,使用PHP搭建

SQPHP

這是一個練習用的PHP框架,起初是為了自己實現如何編寫依賴注入,並且受到Laravel的啟發,因此決定搞一個框架,也算是自己對於PHP學習的總結。

這個框架是開源的,任何人都可以使用,框架功能還在製作中,因為是悠閒性質,所以只有在有空的時候會繼續補強。

結至2021年初,先簡單實現MVC中的C功能。

定義路由

在route目錄下編輯Route.php,該檔案內容如下

namespace route;

return [

['url'=>'/','controller'=>'TestController','action'=>'index','method'=>'get'],

];

路由是由一個陣列組成,裡面需要給定四個屬性

url

controller

action

method

url屬性是restful的格式,代表資源的訪問路徑,例如:

'url'=>'/controller/action'

controller指要使用哪個控制器

'controller'=>'TestController'

action是指要使用controller下的哪個方法

'action'=>'index'

method是提交的方式,如GET或POST

'method'=>'get'

定義控制器

控制器位置在runtime/controllers裡,控制器的位置必需放置在runtime/controllers下。

假設路由定義為

['url'=>'/controller/action','controller'=>'TestController','action'=>'index','method'=>'get'],

你需要在目錄下建立TestController,且擁有index方法,因此具體控制器類如下

namespace RunTime\controllers;

class TestController extends Controller

{

public function index(Demo $demo)

{

//方法體

}

...

}

如上方代碼所示,方法可以注入額外的實例,你不必去new一個實例,這是因為這個框架有使用依賴注入。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值