麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > PHP > 正文

Zend Framework入門知識點小結

2024-05-04 23:44:09
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了Zend Framework入門知識點,總結分析了Zend Framework入門學習的知識重點,需要的朋友可以參考下
 

本文總結分析了Zend Framework入門知識點。分享給大家供大家參考,具體如下:

zend framework是MVC模式的一種實現,要快速的入門差不多只看Zend_Controller Zend_View 部分就可以了吧。

1.Zend_Controller部分。最重要的類是Zend_Controller_Front.使用它的經典代碼很 簡單:

$front=Zend_Controller_Front::getInstance();$front-> setControllerDirectory("./app/controllers");$front->dispatch();

這里要說明的 是不能使用new來獲得一個Zend_Controller_Front,只能調用getInstance方法來返回一個實例(我的 zend_framework用的是1.01)。這里我指定的controllers目錄是在www文檔根目錄之下的app文件夾之下。一般情況下app 不應該放在文檔根目錄下——所謂的安全問題:如果配置不嚴格,www文檔根目錄下的文件可能對訪問者來說都是可見的。一般要放在別的目錄,比如放在和文檔 根目錄同級的地方則可以使用:

$front->setControllerDirectory("../app/controllers")

多了 一個"."。這里使用的是相對路徑。你可以用路徑全名指定其他目錄。比如:

$front->setControllerDirectory("E: /server/app/controllers")

這部分是包含在index。php中的。在正確的配置下,任何請求都會由rewrite功能重定向到這$front即前端控制器Zend_Controller_Front實例。所有認證什么的處理都要在dispatch前處理。

2.Zend_View 常用代碼為:

$view=new Zend_View();Zend_Registry::set("view".$view);

默認采用了Zend_Framework推薦的目錄結構. 即views和 controllers models同級都在application目錄下。views下面有三個同級目錄scrīpts helpers filters。這樣當你定義了一個Controller,你就得在scrīpts下面新建一個目錄,用來存放該Controller下屬的模板。比如簡 單的

Class IndexController extends Zend_Controller_Action{ function IndexAction() { }}

你就要相應的在里面建立一個index目錄,在index目錄下建立一個index.phtml的模板。如果在IndexController下另 建了一個function addAction(),你就得再在index在新建一個add.phtml。你有另一個UserController,你就要相應的有個user目錄在 scrīpts下。這些*.phtml文件類似于html文件,定義你輸出的內容顯示方式。簡單的就是留著空白也可以。但就是不能沒有,否則會提示說 "error“invalid Controller...這是因為默認的ErrorController是已經注冊的。當前端控制器找不到相應的控制器分發的時候就會調用默認的 ErrorController。

我們有時候不想使用默認的目錄結構也不想使用默認的phtml類型的視圖模板。這時我們可以使用

$view->setParam ("noViewRanderer",true);

來取消默認的phtml類型目錄設置。用

$view->setParam ("noErrorHandler",true);

來寫在默認的ErrorController。使用

$view->setscrīptPath ("./app/views");

來設置你的模板所在位置。這在使用smarty模板時很有用。

可以這么寫:

$view=new Zend_View_Smarty();$view->setParam("noViewRanderer",true);$view->setParam("noErrorHandler",true);$view->setscrīptPath("./app/views");Zend_Registry::set("view".$view);

在使用的時候可以這么獲取:

$view=Zend_Registry::get("view");

3. 剛接觸的時候對于model可以簡單的理解為數據對象,對于操作數據庫的一般可以直接繼承Zend_Db_Table這個類封裝的很不錯,一般使用足夠了:

class data extends Zend_Db_Table{ protected $_name="data";}

你只需指定表的名稱,當然你可以不顯示指定,這時zendf會默認的以你的類名去查找數據庫中的表。別忘了為Zend_Db_Table指定 defaultAdapter:

$config = new Zend_Config_Ini('./application/config.ini', 'general');$db = Zend_Db::factory($config->db->adapter, $config->db->config->toArray());Zend_Db_Table::setDefaultAdapter($db);

config.ini類似于[general]

db.adapter = PDO_MYSQLdb.config.host = localhostdb.config.username = robdb.config.password = 123456db.config.dbname = zftest


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久欧美亚洲另类专区91大神 | 刘亦菲一区二区三区免费看 | 久久丝袜脚交足黄网站免费 | 久久欧美亚洲另类专区91大神 | 狠狠操人人干 | 久久人人爽人人爽人人片av免费 | 亚洲人成在线播放网站 | 亚洲成人欧美在线 | 91九色蝌蚪在线 | 午夜精品在线视频 | 婷婷亚洲一区二区三区 | 色人阁导航| 成人午夜免费网站 | 亚洲骚综合| 精品国产一区二区三区天美传媒 | a黄网站 | 成人免费毛片一 | 午夜视| 国产91丝袜在线熟 | 成人短视频在线观看 | 中文字幕综合在线观看 | 99爱福利视频在线观看 | 九九视频精品在线观看 | 久久久精品视频国产 | 无遮挡一级毛片视频 | 视频二区国产 | 久久撸视频 | 久久久婷婷一区二区三区不卡 | 夜间福利视频 | 亚洲第一精品在线 | 日韩做爰视频免费 | 日韩精品99久久久久久 | www69xxxxx| 欧美一级黄色录相 | 性日本xxx | 国产黄色网页 | 亚洲爱爱网站 | a网站在线 | 亚洲精品自在在线观看 | 最新亚洲国产 | 加勒比色综合 |