一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

Yii PHP Framework實(shí)用入門(mén)教程(詳細(xì)介紹)

說(shuō)明:因?yàn)樽罱ぷ鞴ぷ麝P(guān)系,需要開(kāi)發(fā)一個(gè)在Linux下運(yùn)行的Web Application,需要對(duì)現(xiàn)在比較流行的一些php框架做一個(gè)了解和評(píng)估,下面的這篇文章是筆者最近學(xué)習(xí)一個(gè)比較新的php Framework的一點(diǎn)經(jīng)歷和操作步驟,因?yàn)楣俜降氖謨?cè)寫(xiě)得比較晦澀(特別是中文的),曾經(jīng)嘗試遍讀它那個(gè)手冊(cè)再動(dòng)手,讀了一大半發(fā)現(xiàn)仍無(wú)法理解,于是干脆先下手為強(qiáng)了,因而也就有了下面的文章。

介紹
Yii 是一個(gè)基于組件、純OOP的、用于開(kāi)發(fā)大型 Web 應(yīng)用的高性能 php 框架。它將 Web 編程中的可重用性發(fā)揮到極致,能夠顯著加速開(kāi)發(fā)進(jìn)程。Yii適合大流量的應(yīng)用,如門(mén)戶(hù)、BBS、CMS及B2B系統(tǒng)等,功能豐富,性能優(yōu)異,不過(guò)它的中文文檔還不完善,并且有些命令行的操作是針對(duì)非Windows用戶(hù)的,不易理解,所以制作了這篇文檔。
下載地址:http://www.yiiframework.com/download/
中文文檔地址:http://www.yiiframework.com/doc/guide/zh_cn

配置
下面針對(duì)本人的機(jī)器相關(guān)軟件環(huán)境及路徑做下說(shuō)明:
Apache2.2.4+php5.2.5+MySQL5.1.39
在這里需要說(shuō)明的是需要在設(shè)置Windows環(huán)境變量,在Path中添加php運(yùn)行環(huán)境所在的目錄(如本人在原有配置后加上”;C:/php”),因?yàn)槭褂肶ii時(shí)需要php的運(yùn)行環(huán)境。此外,在php版本選擇時(shí)建議不要選擇比較高的版本,本人是從php5.3.0->php5.2.11->php5.2.5一路降下來(lái)才運(yùn)行成功的,建議盡量暫時(shí)不要使用php5.3.0、php5.2.11,本人在使用這兩個(gè)版本過(guò)程中經(jīng)常遇到一個(gè)ext目錄下的dll文件不能加載的情況,當(dāng)然你確認(rèn)自己對(duì)php的配置相當(dāng)熟悉的話(huà)例外。

因?yàn)樵赮ii中需要開(kāi)啟pdo和pdo_mysql,所以請(qǐng)確保在運(yùn)行環(huán)境所使用的php.ini中取消了extension=php_mysql.dll、extension=php_pdo.dll、extension=php_pdo_mysql.dll的注釋。
Apache的網(wǎng)站根路徑為D:/wwwroot,在這個(gè)根路徑下創(chuàng)建一個(gè)名為YiiDemo的文件夾,將從網(wǎng)上下載到的Yii壓縮包解壓之后,拷貝進(jìn)D:/wwwroot/YiiDemo文件夾,文件結(jié)構(gòu)如下:

注:上圖中demosframeworkrequirementsYii壓縮包中的文件夾,其它文件和文件夾是本人使用Eclipse時(shí)創(chuàng)建的。此外,在D:/wwwroot/YiiDemo/framework文件夾下有一個(gè)yiic.bat文件,這個(gè)文件可以幫助我們快速生成網(wǎng)站架構(gòu)和MVC相關(guān)的文件。

另外,在本實(shí)例中MySQLphp都是用了utf8編碼,不建議使用gb2312編碼,能顯示的中文字符太少,并且對(duì)其它東亞語(yǔ)系不支持,甚至連生僻點(diǎn)的繁體中文都不能顯示,而utf8可以解決這個(gè)問(wèn)題。

創(chuàng)建網(wǎng)站初始結(jié)構(gòu)

啟動(dòng)Windows命令行程序(在開(kāi)始菜單上找到“運(yùn)行”,然后輸入“cmd”并回車(chē)),可以看到如下命令行窗口:

在命令行方式下切換到Yiiframework目錄下用以執(zhí)行yiic命令(實(shí)際執(zhí)行的是yiic.bat),如下:

看到如上圖所示的信息之后,就可以使用yiic來(lái)創(chuàng)建網(wǎng)站結(jié)構(gòu)了,在本例中我們?cè)?/SPAN>D:/wwwroot/YiiDemo/framework(注意Apache中網(wǎng)站根路徑為D:/wwwroot)下創(chuàng)建網(wǎng)站,網(wǎng)站名字為study,先在D:/wwwroot/YiiDemo/framework下手動(dòng)創(chuàng)建study這個(gè)文件夾,然后使用如下命令創(chuàng)建網(wǎng)站:yiic webapp 網(wǎng)站路徑,如下圖:

在輸入創(chuàng)建網(wǎng)站的命令之后就會(huì)看到如上圖所示的提示,鍵入”y”之后就會(huì)在D:/wwwroot/YiiDemo/study目錄創(chuàng)建網(wǎng)站的框架結(jié)構(gòu),如下圖所示:

按照本人機(jī)器配置,現(xiàn)在就可以看到Y(jié)ii框架的雛形顯示了,網(wǎng)址是:http://localhost/YiiDemo/study/index.php

生成MVC文件
按照默認(rèn)配置還不能使用數(shù)據(jù)庫(kù),要想獲取與數(shù)據(jù)庫(kù)的練習(xí),需要更改配置,打開(kāi)D:/wwwroot/YiiDemo/study/protected/config文件夾下的main.php文件,更改components中的配置即可,'db'這一參數(shù)被注釋掉了,將'db'參數(shù)設(shè)置如下:
復(fù)制代碼 代碼如下:
'db'=>array(
                                                'connectionString'=>'mysql:host=localhost;dbname=study',
 'username'=>'root',
 'password'=>'jeri',
              ),

保存之后即可連接MySQL數(shù)據(jù)庫(kù)了,實(shí)際使用時(shí)要根據(jù)自己的實(shí)際情況配置。
在此將繼續(xù)使用yiic這個(gè)命令行工具,通過(guò)cd切換工作路徑到D:/wwwroot/YiiDemo/study這個(gè)文件夾,然后在命令行中可以創(chuàng)建model和view文件。如下:

需要注意的是,如上圖所示,因?yàn)?/SPAN>yiic.bat文件在D:/wwwroot/YiiDemo/framework文件夾下,而當(dāng)前命令行的工作路徑是D:/wwwroot/YiiDemo/study,所以在運(yùn)行yiic時(shí)建議使用全路徑。

使用yiic shell命令就可以進(jìn)入shell命令行,在命令行看到的輸入提示變?yōu)椤?/SPAN>>>”,鍵入model 表名就會(huì)創(chuàng)建對(duì)應(yīng)表的model文件,上圖下面就是使用“model user”成功之后就可以看到上圖對(duì)應(yīng)的情況。

還可以使用crud (crud分別是create/read/update/delete的縮寫(xiě),表示常用的增刪改查數(shù)據(jù)庫(kù)操作)表名創(chuàng)建對(duì)應(yīng)的coltrollerview文件,如下圖所示:

比如針對(duì)表useruserlist等使用modelcrud命令之后,我們就可以在瀏覽器中查看這些文件了,如查看userlist表中的數(shù)據(jù),可以在瀏覽器中輸入http://localhost/YiiDemo/study/index.php?r=userlist,看到如下所示的圖:

可以看到盡管MySQLphp都是用了utf8編碼,但是數(shù)據(jù)庫(kù)中的RealName字段因?yàn)槭侵形臄?shù)據(jù)導(dǎo)致不能正常顯示,出現(xiàn)這種情況是因?yàn)椴捎昧四J(rèn)的字符集連接MySQL,在php中直接連接MySQL時(shí),如果使用了utf8編碼,我們會(huì)在php代碼中做如下設(shè)置:mysql_query("set names 'utf8'");但是在Yii中沒(méi)有提供這樣的機(jī)會(huì),          

我們可以在設(shè)置數(shù)據(jù)庫(kù)連接字符串時(shí)指定連接數(shù)據(jù)庫(kù)所使用的字符集,如下:

復(fù)制代碼 代碼如下:
'db'=>array(
'connectionString'=>'mysql:host=localhost;dbname=study',
'username'=>'root',
'password'=>'jeri',
'charset'=>'utf8',//use charset as utf8
            ),

這樣就能正常顯示了。當(dāng)然也可以更改全局配置,那就是更改D:/wwwroot/YiiDemo/framework/db文件夾下的CDbConnection.php文件中的
public $charset;
改為public $charset='utf8';也能正常顯示了,如下圖所示:


好了,至此沒(méi)有寫(xiě)一行代碼,但是已經(jīng)完成了一個(gè)網(wǎng)站的大體框架,并且能初步實(shí)現(xiàn)增刪改查功能了。雖然采用更改全部配置的方式也可以實(shí)現(xiàn)顯示數(shù)據(jù)庫(kù)中的中文,但是不建議采用這種方式。在此非常感謝kingheaven的提示。

php技術(shù)Yii PHP Framework實(shí)用入門(mén)教程(詳細(xì)介紹),轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 激情影院免费看 | 黄色小视频免费 | 国产综合一区二区 | 在线播放黄色 | 夜色福利院在线看青草一 | 国产色在线| 成人www视频 | 婷婷色综合网 | 精品久久看 | 另类一区二区三区 | 69国产成人精品午夜福中文 | 91在线视频在线观看 | 欧美激情性色生活片在线观看 | 国产成+人+亚洲+欧美+日韩 | 国产成人精品自拍 | 九一精品 | 91观看| 日韩精品一级a毛片 | 狠狠亚洲婷婷综合色香 | 中文字幕一二三四区2021 | 欧美视频久久久 | 五月婷婷丁香六月 | 欧美色综合高清视频在线 | 国产婷婷成人久久av免费高清 | 成人免费视频网站 | 韩国免费乱理论片在线观看2018 | 五月婷婷丁香在线视频 | 国产精品一区在线免费观看 | 中文字幕亚洲一区二区v@在线 | 色网站在线视频 | 五月激情天 | 视频一区二区三区在线观看 | 97豆奶| 色综合色狠狠天天综合色 | 成人精品视频在线观看 | 成人精品视频在线观看 | 一级做a爰片性色毛片视频图片 | 欧美在线精品永久免费播放 | 精品国产一区二区三区在线 | 久久激情综合网 | 精品久久久久久蜜臂a∨ |