THINKPHP之控制器_PHP教程
如何新增控制器?
在Lib/Action中新增一个控制器:ProductAction.class.php:
class ProductAction extends Action{
public function index(){
echo 'product模块 , index方法';
}
}
然后通过url访问: 这此要引入一个非常重要的一个概念:
url调度模式:就是我们在访问网站时的使用不同的ur访问方式
tp支持四种访问方式:可以通过URL_MODEL参数来控制。
1.普通模试:默认都支持
www.tp.com/index.php?m=Product&a=index&id=1
m模块名
a动作
2.pathinfo模(tp中的默认调度模式):
http://www.tp.com/index.php/Product/index/id/1/name/zhangsan
product模块名
index方法名
id是参数
1为值 。。。。。 一般都后面的参数都是成对出现的。以/分隔。
3. rewrite模式,即重写。 在页面静态化中用的
可以把入口文件省略掉:
http://www.tp.com/Product/index/id/1/name/zhangsan
设置方法:
1、httpd.conf配置文件中加载了mod_rewrite.so模块
2、AllowOverride None将None改为All (注意不能与 #Options Indexes同时出现,否则会出现没有权限访问)
3、确保URL_MODEL设置为2
4、把下面的内容保存为.htaccess文件放到入口文件的同级目录下
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
4.兼容模式:
如果不支持web服务器不支pathinfo或rewrite模式,但我们还想使用,可以考虑用兼容模式
http://www.tp.com/index.php?s=Product/index/id/1/name/zhangsan
或者:http://www.tp.com/?s=Product/index/id/1/name/zhangsan
在配置文件中,一个URL_MODEL的0123分别表示。默认都支持,这是怎么回事????
无论什么模式都支持普通模式,在表单提交的时候就可以看出区别了。
路径分隔符:'URL_PATHINFO_DEPR' => '-', // PATHINFO模式下,各参数之间的分割符号
http://www.tp.com/?s=Product-index-id-1-name-zhangsan
控制器中的空操?用这个方式可以简化url,利用它的一个特点。
系统在找不到指定的方法,执行的方法。
在控制器内加入如下方法:
/*
* $name 表示请求的方法
*/
public function _empty($name){
echo '请求页面无法显示'.$name;
}
5、 空模块
空模块的概念是指当系统找不到指定的模块名称的时候,系统会尝试定位空模块(EmptyAction),利用这个机制我们可以用来定制错误页面和进行URL的优化。
l EmptyAction
MODULE_NAME
我们现在尝试请求一个url
http://localhost/tp/index.php/Student/shanghai
由于我们系统中没有StudentAction这个控制器,所以会报错
我们在项目创建一个叫EmptyAction类,以后,如果系统找不到相应模块时,会自动定位到这个Action中,如果我们在这个类中再添加一个叫_empty的方法,这样一样,可以屏蔽所有来自url的错误
5、 项目分组
在大型项目里,一个大的项目往往是由若干个小项目组成。比如说:可能是由
前台项目、后台项目、会员博客、论坛
l config.php
l APP_GROUP_LIST 分组列表
l DEFAULT_GROUP 默认分组
在我们项目中,现在开始分组:
1)前台项目 Home
2)后台项目 Admin

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

執行 ThinkPHP 專案需要:安裝 Composer;使用 Composer 建立專案;進入專案目錄,執行 php bin/console serve;造訪 http://localhost:8000 查看歡迎頁面。

1.處理器在選擇電腦配置時,處理器是至關重要的組件之一。對於玩CS這樣的遊戲來說,處理器的效能直接影響遊戲的流暢度和反應速度。建議選擇IntelCorei5或i7系列的處理器,因為它們具有強大的多核心處理能力和高頻率,可以輕鬆應對CS的高要求。 2.顯示卡顯示卡是遊戲表現的重要因素之一。對於射擊遊戲如CS而言,顯示卡的表現直接影響遊戲畫面的清晰度和流暢度。建議選擇NVIDIAGeForceGTX系列或AMDRadeonRX系列的顯示卡,它們具備出色的圖形處理能力和高幀率輸出,能夠提供更好的遊戲體驗3.內存電

ThinkPHP 擁有多個版本,針對不同 PHP 版本而設計。主要版本包括 3.2、5.0、5.1 和 6.0,而次要版本用於修復 bug 和提供新功能。目前最新穩定版本為 ThinkPHP 6.0.16。在選擇版本時,需考慮 PHP 版本、功能需求和社群支援。建議使用最新穩定版本以獲得最佳性能和支援。

ThinkPHP Framework 的本機運作步驟:下載並解壓縮 ThinkPHP Framework 到本機目錄。建立虛擬主機(可選),指向 ThinkPHP 根目錄。配置資料庫連線參數。啟動 Web 伺服器。初始化 ThinkPHP 應用程式。存取 ThinkPHP 應用程式 URL 運行。

大疆尚未確認推出新運動相機的計畫。相反,GoPro 今年似乎將領先其競爭對手,並透露將於 9 月 4 日推出兩款新的運動相機。

Laravel 和 ThinkPHP 框架的效能比較:ThinkPHP 效能通常優於 Laravel,專注於最佳化和快取。 Laravel 性能良好,但對於複雜應用程序,ThinkPHP 可能更適合。

從零開始學習Laravel:控制器方法呼叫詳解在Laravel的開發中,控制器是一個非常重要的概念。控制器起到了連接模型和視圖的橋樑作用,負責處理來自路由的請求,並返回相應的資料給視圖展示。控制器中的方法可以被路由調用,這篇文章將詳細介紹如何編寫並調用控制器中的方法,同時會提供特定的程式碼範例。首先,我們需要建立一個控制器。可以使用Artisan命令列工具來生

《開發建議:如何利用ThinkPHP框架實現非同步任務》隨著網路技術的快速發展,Web應用程式對於處理大量並發請求和複雜業務邏輯的需求也越來越高。為了提高系統的效能和使用者體驗,開發人員常常會考慮利用非同步任務來執行一些耗時操作,例如發送郵件、處理文件上傳、產生報表等。在PHP領域,ThinkPHP框架作為一個流行的開發框架,提供了一些便捷的方式來實現非同步任務。
