-
ThinkPHP3.2.3版本中 1. 1).沒有Tml文件夾,應(yīng)該在Appliaction/Home/View下面建立文件夾 才可以。 2)>調(diào)用 Index 控制器的 Index 操作 對應(yīng)的模板文件就應(yīng)該是:./Application/Home/View/Index/Index.html (必須在 Application/Home/View 目錄下建立一個和控制器同名的[注意大小寫]文件夾,用以存放此控制器不同操作需要調(diào)用的不同模板) 2. 1).在 Index 控制器的 Index 操作中調(diào)用此操作默認的模板(./Application/Home/View/Index/Index.html )時,不用填寫調(diào)用的模板名: $this->display(); 2).在 Index 控制器的 Index 操作中調(diào)用 本控制器的 其他操作的模板(./Application/Home/View/Index/test.html )時,需要填寫調(diào)用的模板名: $this->display('test'); 3).跨控制器調(diào)模板時,需要將 控制器文件夾名 填寫上(在 User控制器 的 add操作 中調(diào)用 Index控制器 的 test操作): $this->display('Index/test'); 4) a.這里的模板文件夾( Application/Home/View )中的控制器和操作并不一定需要在程序中有實際對應(yīng)的控制器和操作的代碼,只是一個目錄名稱和文件名稱而已,例如,你的項目里面可能根本沒有Public控制器,更沒有Public控制器的menu操作,但是一樣可以使用: (在 Index控制器 的 Index操作 中調(diào)用 Public/test 模板) $this->display('Public/test'); //必須在同一個應(yīng)有中 b.甚至可以調(diào)用不同應(yīng)有的模板,只要路徑對(相對于入口文件的相對路徑): (在 ./Application/Home/Controller[相對于入口文件] 下的 Index控制器 的 Index操作 中調(diào)用 ./Template/menu.html 模板) $this->display('Template/menu.html'); //此時必須要吧文件后綴名也寫上才能正常調(diào)用查看全部
-
常用方法: C( ) 寫在框架Common/common.php文件里;U( )寫在Common/function.php文件里。 自定義函數(shù): 1) 3.1.2版本:Common中新建名為common.php的文件,寫好自定義的函數(shù)方法;在IndexAction.class.php直接調(diào)用。 2) 3.2版本:App\Home\Common目錄下,創(chuàng)建名為function.php的文件,其他同上 開發(fā)過程中常用的方法:查看全部
-
1.偽靜態(tài)頁面定義 沒有與數(shù)據(jù)庫交互就是靜態(tài)網(wǎng)頁,有數(shù)據(jù)交互才能產(chǎn)生內(nèi)容就是動態(tài)頁面。 偽靜態(tài)讓搜索引擎誤以為該頁面是靜態(tài)(如截圖:實際上瀏覽器訪問的是 index控制器 的 user方法 傳回來的數(shù)據(jù),而不是一個真正的html靜態(tài)頁面,但TP讓數(shù)據(jù)已靜態(tài)頁面的方式顯示在瀏覽器中,這樣搜索引擎就能將生成的偽靜態(tài)頁面認為是一個靜態(tài)頁面了),從而更快速搜索到。 因為動態(tài)頁面之中如果數(shù)據(jù)量比較大,就會多花很多時間去讀取數(shù)據(jù),如果用戶每一次都需要很多時間去讀取數(shù)據(jù),是不是會流失用戶? 而靜態(tài)方法的作用就是把動態(tài)頁面獲取到的內(nèi)容保存在一個自動生成的html或者shtml頁面中,用戶第一次瀏覽頁面的時候讀取時間會慢,但是第二次第三次甚至直到數(shù)據(jù)沒有變化前,用戶基本不需要讀取數(shù)據(jù)庫中的數(shù)據(jù)就能瀏覽到之前第一次瀏覽時就保存好了的信息。 2. URL偽靜態(tài):設(shè)置URL偽靜態(tài)有助于搜索引擎找到該頁面,更輕易被蜘蛛爬蟲抓取。 偽靜態(tài)的設(shè)置: 偽靜態(tài)頁面后綴在框架配置文件中設(shè)置( ThinkPHP/Conf/convention.php )的( 'URL_HTML_SUFFIX'=>'html’, )但框架配置文件不建議修改(當多個項目共用一個框架時,修改框架配置文件會影響其他項目),所以只需要在項目配置文件中從新設(shè)置,用以覆蓋框架配置文件的設(shè)置即可. 在APP/Config/config.php里設(shè)置 return array( 'URL_HTML_SUFFIX'=>'html|shtml|xml',//URL偽靜態(tài)后綴設(shè)置(幾種后綴用 ‘|’ 分隔) ) 此時就可以用 U() 函數(shù)定義偽靜態(tài)頁面的后綴了查看全部
-
1、ThinkPHP中的URL模式: 如果整個應(yīng)用下面的模塊都是采用統(tǒng)一的URL模式,就可以在應(yīng)用配置文件中設(shè)置URL模式,如果不同的模塊需要設(shè)置不同的URL模式,則可以在模塊配置文件中設(shè)置。 在配置文件中定義URL_MODEL的值 值為1 默認模式 pathinfo模式 形式如下:http://localhost/muke/index.php/Index/user/id/1.html 值為0 普通模式 形式如下:http://localhost/muke/index.php?m=Index&a=user&id=1 值為2 重寫模式(不顯示入口文件,此模式需要在服務(wù)器上做額外的配置) 形式如下:http://localhost/muke/Index/user/id/1.html 值為3 兼容模式 形式如下:http://localhost/muke/index.php?s=/Index/user/id/1.html查看全部
-
1、調(diào)用配置文件中設(shè)置的參數(shù)用C方法: 例如:在Conf文件夾下的config.php中定義了'name'=>'aa' 在控制器中調(diào)用name的值時應(yīng) C('name') [ 大C函數(shù) 用于查看和動態(tài)修改配置參數(shù)值] 2、在 非調(diào)試模式下 [ define('APP_DEBUG’,FALSE) ], TP 在第一次運行時,在項目文件夾下( Application文件夾下 )創(chuàng)建 Runtime文件夾 并將部分(不需要改變的)代碼編譯加載到此文件夾中,當系統(tǒng)再次運行時,就直接到此文件夾中調(diào)用,減少了編譯時間.所以當修改 config.php 中參數(shù)的值重新運行時,用 C() 查看到的參數(shù)值沒有改變 在 調(diào)試模式下 [ define('APP_DEBUG’,TURE) ], TP 在每次運行時都會進行編譯,且不會將編譯的代碼存儲在 Runtime文件夾 中,此時修改 config.php 中參數(shù)的值重新運行時,用 C() 查看到的參數(shù)值就改變. 3、若想調(diào)用自己新建配置文件中的值,需在config.php中加載此配置文件 例子:自己在Conf文件夾中新建了user.php,代碼如下 return array( 'sex'=>'woman', LOAD_EXT_CONFIG=>'user', //加載同目錄下的自定義配置文件,配置文件名必須與此參數(shù)值相同 ); 4.個人見解: 在 非調(diào)試模式下 [ define('APP_DEBUG’,FALSE) ], TP 在第一次運行時,在項目文件夾下( Application文件夾下 )創(chuàng)建的 Runtime文件夾中 編譯加載的代碼:在加載系統(tǒng)自定義的配置文件( config.php )中的代碼時,只加載了 “ LOAD_EXT_CONFIG=>'user' “ 這條語句,所以當 user.php 和 config.php 配置文件中的參數(shù)都修改后,再次運行時, 用 C() 查看到的參數(shù)值 config.php 中修改的沒有改變; user.php 中的就改變了. 所以 PS :無特殊情況,最好不要自定義配置文件查看全部
-
ThinkPHP的運行流程: 1.加載ThinkPHP.php 2.加載./thinkPHP/LIB/core路徑下的核心文件 3.加載項目的文件->分析URL->調(diào)用相關(guān)的控制器 示例URL:http://localhost/index.php?m=index&a=index m->module 模塊 控制器 a->action 方法 URL參數(shù)獲取 與 簡易控制器->方法 -示例: $module = isset($_GET['m'])?$_GET['m']:'index'; //獲取控制器名 $action = isset($_GET['a'])?$_GET['a']:'index'; //獲取方法名 echo $module.' and '.$action.’<br/>’; $demo = new $module(); //實例化模塊 $demo -> $action(); //調(diào)用方法名 // 定義控制器 class Index{ function __construct(){ echo "Tndex contronller!<br/>"; } function Index(){ echo "Function index in contronller Index!"; } } exit; //因為這里退出了腳本,所以后面的定義項目目錄與 ThinkPHP.php加載 都沒有進行查看全部
-
common: 存放當前項目的公共函數(shù) Conf:存放當前項目的配置文件 Lang:純粉色那個當前項目的語言包 Lib:存放當前項目的控制器和模型 Runtime:存放當前項目的運行文件查看全部
-
<?php //ThinkPHP建立項目 //APP_NAME 是指項目名稱,注意APP_NAME 不要隨意設(shè)置 //如果你的項目是直接部署在Web根目錄下面的話,那么需要設(shè)置APP_NAME為空 //APP_PATH 是指項目路徑(必須以“/”結(jié)束) define('APP_NAME','YUNPAN');//項目名 define('APP_PATH','./YUNPAN/);//項目路徑,YUNPAN目錄后的"/"不能省 require('./ThinkPHP/ThinkPHP.php');查看全部
-
什么是單一入口框架? 答:它是指一類框架。是指在一個網(wǎng)站中,所有的請求都指向一個腳本或者多個腳本(分前臺和后臺)。比如一棟大樓只有一個大門,進入這棟大樓的所有人都可以被保安看到。同理,單一入口框架的好處是項目結(jié)構(gòu)規(guī)范、控制靈活以及更加安全。典型的單一入口框架有zend、cakePHP、codeIgniter。查看全部
-
一、關(guān)于ThinkPHP 國產(chǎn)、開源、面向?qū)ο?、MVC框架。2006n,大道至簡。 特點: 單一入口框架. 簡單易用的MVC模式、查詢語言豐富、詳細的文檔和中文注釋。 官方有詳細的中文文檔、便于解決問題、強大的中文備注、查詢語言豐富、簡單的CVRD、連貫的操作、 比較實用的自動驗證等功能。 官方下載ThinkPHP www.thinkphp.cn查看全部
-
hinkphp框架的基礎(chǔ)部分大綱: 1.建立一個簡單的項目了解項目的運行流程 2.了解TP的url模式 建立自定義函數(shù) 放在哪的問題 3.模板技術(shù) 基于xml模板調(diào)試技術(shù)和運行狀態(tài)來做的 一次編譯多次運行 4.數(shù)據(jù)庫的常用操作;自動驗證等查看全部
-
什么是框架?在生活中的框架如買房子一般沒裝修,它就像一個框架,可以設(shè)計成不同的風(fēng)格 體系有很多設(shè)計模式,比如MVC,單列,AR等。 為什么要使用框架? 快速高效的搭建穩(wěn)定的業(yè)務(wù)系統(tǒng);使業(yè)務(wù)系統(tǒng)更靈活、更易維護、專注于業(yè)務(wù)系統(tǒng)的設(shè)計。代碼更加整潔、干凈,節(jié)約時間。 什么時候能用到框架? 快速開發(fā)大型的系統(tǒng) 或 需要多人協(xié)作時的統(tǒng)一標準. 什么時候不需要用框架? 不知道,后期學(xué)習(xí)查看全部
-
thinkPHP入門 1.常見的PHP框架:ZEND25%、thinkPHP22%、codei、YII、qeephp 2.理解MVC思想和框架的含義、thinkPHP基本知識、thinkPHP中數(shù)據(jù)庫操作、基于thinkPHP的博客系統(tǒng)查看全部
-
什么是單一入口框架? 答:它是指一類框架。是指在一個網(wǎng)站中,所有的請求都指向一個腳本或者多個腳本(分前臺和后臺)。比如一棟大樓只有一個大門,進入這棟大樓的所有人都可以被保安看到。同理,單一入口框架的好處是項目結(jié)構(gòu)規(guī)范、控制靈活以及更加安全。典型的單一入口框架有zend、cakePHP、codeIgniter。查看全部
-
關(guān)于ThinkPHP的特點: 1.國產(chǎn)的、開源的、面向?qū)ο蟮?、基于MVC框架的。 2.簡單易用的MVC模式、查詢語言豐富、詳盡的文檔和中文注釋。查看全部
舉報
0/150
提交
取消