国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

charm_PHP,一個(gè)還有諸多問題的PHP MVC框架

cuieney / 2178人閱讀

摘要:原文是在我自己博客中,小伙伴也可以點(diǎn)閱讀原文進(jìn)行跳轉(zhuǎn)查看,還有好聽的背景音樂噢介紹一個(gè)簡(jiǎn)單的框架,框架中實(shí)現(xiàn)了和層,層使用的組件,實(shí)現(xiàn)了一些簡(jiǎn)單的設(shè)計(jì)模式,單一入口自動(dòng)加載。

原文是在我自己博客中,小伙伴也可以點(diǎn)閱讀原文進(jìn)行跳轉(zhuǎn)查看,還有好聽的背景音樂噢~

charm_PHP 介紹

一個(gè)簡(jiǎn)單的MVC框架,框架中實(shí)現(xiàn)了C和V層,M層使用composer的PHP組件——Medoo,實(shí)現(xiàn)了一些簡(jiǎn)單的設(shè)計(jì)模式,單一入口、自動(dòng)加載。

本框架遵循PSR規(guī)范,使用命名空間來規(guī)范類于類之間的互相合作;

目錄
app -> 應(yīng)用目錄
    controller -> 控制器目錄
    core       -> 公共、核心文件目錄
    views      -> 視圖目錄
resource  -> 資源目錄(js、images、css等)
system
    config       -> 框架配置文件目錄
    core       -> 框架核心文件目錄
        Charm.php    -> 核心文件
        Common.php   -> 公共方法
        Cofig.php    -> 配置類
        Core.php     -> 核心文件
        Log.php      -> 日志類
        Model.php    -> 數(shù)據(jù)庫(kù)類
        Page.php     -> 分頁(yè)類
        Route.php    -> 路由類
        Security.php -> 驗(yàn)證類
        Session.php  -> session類
    dirves     -> 驅(qū)動(dòng)文件目錄
vendor  -> PHP組件
初始化

本地下載項(xiàng)目:git clone https://github.com/charm-v/ch...

打開cmd,在項(xiàng)目下輸入 compoer install

運(yùn)行框架

全局方法 model()

Use: $model =& model();

post($key)

Use: $postData = post(); OR $name = post("name");

get($key)

Use: $getData = get(); OR $name = get("name");

request($key, $type = "get")

Use:

$getName     = request("name", "get");
$posttName   = request("name", "POST");`
$requestName = request("name", "request");`
ajaxReturn($status, $msg = "")

Use:

1、`ajaxReturn(200, "ok"); => {"status":200, "msg":"ok"}`

2、$returnData = [
    "state"   => 400,
    "message" => "error",
    "data"    => []
];
ajaxReturn($returnData); => {"state":400, "error":"ok","data":[]}
view($viewName, $data = [])

Use:

view("home");
view("home", ["content" => "內(nèi)容"]);
css($cssName, $cssPath = "css", $resource = "resource")

Use:

css("main.css"); 
==> 

css("main.css", "css/home")
==> 
js($jsName, $jsPath = "css", $resource = "resource")

Use:

css("main.js"); 
==> 

......
base_url($uri = "")

Use:

base_url(); 
==> http://charm_PHP.com

base_url("index/getUserList"); 
==> http://charm_PHP.com/index/getUserList
redirect($uri, $flag = false)

Use:

redirect("index/editUserInfo"); 
==> Location: http://charm_PHP.com/index/editUserInfo

redirect("baidu.com"); 
==> Location: http://baidu.com

redirect("https://google.com"); 
==> Location: https://google.com

類使用 Config類
use systemcoreConfig;

// PAGENUM 配置項(xiàng)下標(biāo) page配置項(xiàng)文件名
Config::get("PAGE_NUM", "page");
Log類
use systemcoreLog;

// PAGENUM 配置項(xiàng)下標(biāo) page配置項(xiàng)文件名
Log::log($data, $fileName);

Page類
use systemcoreConfig;
use systemcorePage;

if(isset($_GET["page"])) {
    $now_page = intval($_GET["page"]) ? intval($_GET["page"]) : 1;
}else {
    $now_page = 1;
}
// 取得配置項(xiàng)每頁(yè)條數(shù)
$pageNum           = Config::get("PAGE_NUM", "page");
// 計(jì)算偏移量
$offset            = $pageNum * ($now_page - 1);

$data["count"]     = parent::$model->count(table, $where);
$where["LIMIT"]    = [$offset, $pageNum];

$data["orderData"] = parent::$model->select("table", "*", $where);

// 分頁(yè)處理
$objPage           = new page($data["count"], $pageNum, $now_page, "?page={page}" . $parameter);
$data["pageNum"]   = $pageNum;

// 生成分頁(yè)代碼
$data["pageList"]  = $objPage->myde_write();



依賴組件

Medoo

var-dumper

whoops

gitHub地址

Charm_PHP

結(jié)語(yǔ)

這個(gè)小框架,被我一直用作一些小型的外包項(xiàng)目中,暫時(shí)還沒有發(fā)現(xiàn)什么很嚴(yán)重的錯(cuò)誤,估計(jì)是黑客好心,看到這個(gè)項(xiàng)目這么爛不忍心黑?嗯...有時(shí)間的話還是很想補(bǔ)充、完善一下這個(gè)框架的。
對(duì)了,這個(gè)小框架的原型是我在慕課網(wǎng)的一節(jié)課程中學(xué)習(xí)到的,自己敲出來后,然后就拿來自己用啦,注明一下課程的地址,想學(xué)習(xí)的小伙伴可以去學(xué)習(xí)一下:從零開始打造自己的PHP框架。,嗯,就先介紹到這里啦

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/26084.html

相關(guān)文章

  • 說說PHP框架MVC架構(gòu)

    摘要:前言在說架構(gòu)之前,先說說框架吧。在架構(gòu)中就是這個(gè)轉(zhuǎn)接頭。當(dāng)一個(gè)新框架誕生后,關(guān)注點(diǎn)從學(xué)習(xí)這個(gè)框架,慢慢變成了這個(gè)框架是如何設(shè)計(jì)的,解決什么樣的問題。前幾年使用過各種框架,小到,大到。 前言 在說 MVC 架構(gòu)之前,先說說PHP框架吧。很多很多學(xué)完P(guān)HP語(yǔ)言的人,面對(duì)的就是PHP各種各樣的框架。什么TP啊、Yii啊、CI啊,還有很流行的laravel啊等等。 他們的大部分都會(huì)說自己是基于...

    waltr 評(píng)論0 收藏0
  • 一篇文章了解前端框架演變

    摘要:所以我查了很多的材料,希望能從自己的角度上用通俗的語(yǔ)言闡述前端框架的演變。現(xiàn)在,前端頁(yè)面會(huì)有很多復(fù)雜的交互邏輯和用戶體驗(yàn),如果還使用之前老的框架,對(duì)層的操作就會(huì)難以維護(hù),這就是前端框架要不斷演變的主要原因。 說實(shí)在的,我不覺得MVC,MVVM這些框架有什么難的,直到我想寫一篇文章去系統(tǒng)的闡述它們。我遇到了以下幾個(gè)問題,1.不同的文章說的南轅北轍 2.沒有一個(gè)清晰的大綱和框架分類。所以我...

    lvzishen 評(píng)論0 收藏0
  • 一篇文章了解前端框架演變

    摘要:所以我查了很多的材料,希望能從自己的角度上用通俗的語(yǔ)言闡述前端框架的演變。現(xiàn)在,前端頁(yè)面會(huì)有很多復(fù)雜的交互邏輯和用戶體驗(yàn),如果還使用之前老的框架,對(duì)層的操作就會(huì)難以維護(hù),這就是前端框架要不斷演變的主要原因。 說實(shí)在的,我不覺得MVC,MVVM這些框架有什么難的,直到我想寫一篇文章去系統(tǒng)的闡述它們。我遇到了以下幾個(gè)問題,1.不同的文章說的南轅北轍 2.沒有一個(gè)清晰的大綱和框架分類。所以我...

    Freelander 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<