国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁 后端開發(fā) php教程 cakephp 初品cakephp 入門基礎(chǔ)

cakephp 初品cakephp 入門基礎(chǔ)

Jul 29, 2016 am 08:47 AM
cakephp

 初品cakephp 入門基礎(chǔ)
首先來看一下cakephp的的執(zhí)行流程(從百度百科借來的圖片):
1:首先你的服務(wù)器必須支持rewrite,如果是不支持rewrite的虛擬主機的話cakephp是不能正常運行的。
2:將所有的請求定向到cakephp框架后就進入了框架的route,cakephp帶有一套默認(rèn)的分發(fā)規(guī)則(例如:http://……/test/test,在不做任何route配置的情況下cakephp會自動執(zhí)行test_controller控制器中的test方法)。
我們可以通過配置route的方式將任何請求指向我們所希望執(zhí)行的控制器和方法,配置如下(app/config/routes.php):

復(fù)制代碼 代碼如下:


Router::connect('/pages/*', array('controller' => 'test', 'action' => 'index'));


3:請求進入controller后cakephp會根據(jù)controller的名字去加載默認(rèn)的model。例如:TestController會自動加載models下的test.php文件,接著我們就可以通過如下方法調(diào)用該model的方法了。

復(fù)制代碼 代碼如下:


$this->test->find('all');


查看cakephp框架的controller基類源碼(cake\libs\controller\controller.php的__mergeVars方法中)

復(fù)制代碼 代碼如下:


if ($this->uses !== null && $this->uses !== false) {
$merge[] = 'uses';
}
foreach ($merge as $var) {
if (isset($appVars[$var]) && !empty($appVars[$var]) && is_array($this->{$var})) {
if ($var !== 'uses') {
$normal = Set::normalize($this->{$var});
$app = Set::normalize($appVars[$var]);
if ($app !== $normal) {
$this->{$var} = Set::merge($app, $normal);
}
} else {
$this->{$var} = array_merge($this->{$var}, array_diff($appVars[$var], $this->{$var}));
}
}
}


在cakephp構(gòu)造controller的時候?qū)ses數(shù)組中的model會全部實例化。
4、5、6:是controller和model直接處理業(yè)務(wù)邏輯的一個過程,值得注意的是cakephp的model繼承自AppModel,在AppModel中已經(jīng)實現(xiàn)了一些數(shù)據(jù)庫的操作方法,并且model會默認(rèn)關(guān)聯(lián)到數(shù)據(jù)庫中的表。這一點感覺不是很好,model只是一個數(shù)據(jù)庫的操作層了。
7:在進行完業(yè)務(wù)處理后,最終要數(shù)據(jù)要整合html輸出到瀏覽器端。在cakephp的視圖中包含布局文件、元素文件和模板文件,這些文件的在1.3版本中采用ctp的后綴,在controller基類里面可以修改var $ext = '.ctp';來改變模板文件的后綴。
小結(jié):cakephp框架使用起來感覺不夠靈活,model層存在局限性。而視圖文件中采用的是php的語法不便于團隊開發(fā)中的任務(wù)分離。在小項目中cakephp還是游刃有余的,框架提供的腳手架、核心組件和一些類可以快速方便的構(gòu)建一個項目。cakephp初識,認(rèn)識可能存在偏差。

以上就介紹了cakephp 初品cakephp 入門基礎(chǔ),包括了cakephp方面的內(nèi)容,希望對PHP教程有興趣的朋友有所幫助。

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻,版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機

Video Face Swap

Video Face Swap

使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

CakePHP 使用數(shù)據(jù)庫 CakePHP 使用數(shù)據(jù)庫 Sep 10, 2024 pm 05:25 PM

在 CakePHP 中使用數(shù)據(jù)庫非常容易。本章我們將了解CRUD(創(chuàng)建、讀取、更新、刪除)操作。

CakePHP 項目配置 CakePHP 項目配置 Sep 10, 2024 pm 05:25 PM

在本章中,我們將了解CakePHP中的環(huán)境變量、常規(guī)配置、數(shù)據(jù)庫配置和電子郵件配置。

CakePHP 日志記錄 CakePHP 日志記錄 Sep 10, 2024 pm 05:26 PM

登錄 CakePHP 是一項非常簡單的任務(wù)。您只需使用一項功能即可。您可以記錄任何后臺進程(如 cronjob)的錯誤、異常、用戶活動、用戶采取的操作。在 CakePHP 中記錄數(shù)據(jù)很容易。提供了 log() 函數(shù)

CakePHP 創(chuàng)建驗證器 CakePHP 創(chuàng)建驗證器 Sep 10, 2024 pm 05:26 PM

可以通過在控制器中添加以下兩行來創(chuàng)建驗證器。

CakePHP 服務(wù) CakePHP 服務(wù) Sep 10, 2024 pm 05:26 PM

本章介紹有關(guān) CakePHP 中可用的身份驗證過程的信息。

CakePHP 路由 CakePHP 路由 Sep 10, 2024 pm 05:25 PM

在本章中,我們將學(xué)習(xí)以下與路由相關(guān)的主題?

如何在CakePHP中創(chuàng)建自定義分頁? 如何在CakePHP中創(chuàng)建自定義分頁? Jun 04, 2023 am 08:32 AM

CakePHP是一個強大的PHP框架,為開發(fā)人員提供了很多有用的工具和功能。其中之一是分頁,它可以幫助我們將大量數(shù)據(jù)分成幾頁,從而簡化瀏覽和操作。默認(rèn)情況下,CakePHP提供了一些基本的分頁方法,但有時你可能需要創(chuàng)建一些自定義的分頁方法。這篇文章將向您展示如何在CakePHP中創(chuàng)建自定義分頁。步驟1:創(chuàng)建自定義分頁類首先,我們需要創(chuàng)建一個自定義分頁類。這個

CakePHP 文件上傳 CakePHP 文件上傳 Sep 10, 2024 pm 05:27 PM

為了進行文件上傳,我們將使用表單助手。這是文件上傳的示例。

See all articles