thinkphp四种url访问方式详解


Posted in PHP onNovember 28, 2014

本文实例分析了thinkphp的四种url访问方式。分享给大家供大家参考。具体分析如下:

一、什么是MVC

  thinkphp的MVC模式非常灵活,即使只有三个中和一个也可以运行。

M -Model 编写model类 对数据进行操作

V -View  编写html文件,页面呈现

C -Controller 编写类文件(UserAction.class.php)

二、ThinkPHP的MVC特点    (简单了解)

三、ThinkPHP的MVC对应的目录  (简单了解)

M 项目目录/应用目录/Lib/Model

V 项目目录/应用目录/Tpl

C 项目目录/应用目录/Lib/Action

四、url访问C      (简单了解)

五、url的4种访问方式    (这是重点!!)

1.PATHINFO 模式 --重点 在后面使用非常多,如果想传多个参数可以使用键1/值1/键2/值2方法

http://域名/项目名/入口文件/模块名/方法名/键1/值1/键2/值2

2.普通模式也称为重写模式

http://域名/项目名/入口文件?m=模块名&a=方法名&键1=值1&键2=值2

3.REWRITE重写模式,去掉入口文件便于SEO优化

http://域名/项目名/模块名/方法名/键1/值1/键2/值2

4.兼容模式

http://域名/项目名/入口文件?s=模块名/方法名/键1/值1/键2/值2

如何修改PATHINFO地址中的/改成-在Home/Conf/config.php中

'URL_PATHINFO_DEPR'=>'-',//修改RUL的分隔符,把地址栏的参数部分/换成:http://域名/项目名/入口文件/模块名-方法名-键1-值1-键2-值2

在index.php中开启调用模式,为了在后产模式中不让文件缓存影响开发

define('APP_DEBUG',ture);//如果设置为ture不缓存文件,false则缓存文件

REWRITE模式开启方法

在httpd.conf中查找rewrite_module modules/mod_rewrite.sl 把#去掉重启服务,在入口文件下新建.htaccess.php,重写文件是去掉index.php的意思:

RewriteEngine on  

RewriteCond %{REQUEST_FILENAME} !-d  

RewriteCond %{REQUEST_FILENAME} !-f  

RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
 

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP通过COM使用ADODB的简单例子
Dec 31 PHP
通过PHP修改Linux或Unix口令的方法分享
Jan 30 PHP
php Ubb代码编辑器函数代码
Jul 05 PHP
php中的注释、变量、数组、常量、函数应用介绍
Nov 16 PHP
php遍历文件夹所有文件子文件夹函数代码
Nov 27 PHP
PHP获取数组长度或某个值出现次数的方法
Feb 11 PHP
浅谈php错误提示及查错方法
Jul 14 PHP
php 无限级分类 获取顶级分类ID
Mar 13 PHP
微信自定义菜单的创建/查询/取消php示例代码
Aug 05 PHP
php连接微软MSSQL(sql server)完全攻略
Nov 27 PHP
Thinkphp5.0 框架视图view的比较标签用法分析
Oct 12 PHP
Nginx+php配置文件及原理解析
Dec 09 PHP
thinkphp数据查询和遍历数组实例
Nov 28 #PHP
php中fgetcsv()函数用法实例
Nov 28 #PHP
PHP获取服务器端信息的方法
Nov 28 #PHP
thinkphp模板用法和内容输出实例
Nov 28 #PHP
配置php.ini实现PHP文件上传功能
Nov 27 #PHP
php程序员应具有的7种能力小结
Nov 27 #PHP
分享最受欢迎的5款PHP框架
Nov 27 #PHP
You might like
简单的用PHP编写的导航条程序
2006/10/09 PHP
图片存储与浏览一例(Linux+Apache+PHP+MySQL)
2006/10/09 PHP
php之XML转数组函数的详解
2013/06/07 PHP
PHP字符串的连接的简单实例
2013/12/30 PHP
ThinkPHP使用心得分享-分页类Page的用法
2014/05/15 PHP
ThinkPHP视图查询详解
2014/06/30 PHP
php判断是否连接上网络的方法实例详解
2016/12/14 PHP
PHP使用new StdClass()创建空对象的方法分析
2017/06/06 PHP
Javascript与flash交互通信基础教程
2008/08/07 Javascript
自动最大化窗口的Javascript代码
2013/05/22 Javascript
引入JS文件IE6报语法错误或缺少对象问题的解决方法
2014/01/09 Javascript
浅析JavaScript中的对象类型Object
2016/05/26 Javascript
JS类的定义与使用方法深入探索
2016/11/26 Javascript
js实现点击每个li节点,都弹出其文本值及修改
2016/12/15 Javascript
Javascript 对cookie操作详解及实例
2016/12/29 Javascript
bootstrap滚动监控器使用方法解析
2017/01/13 Javascript
Vue开发过程中遇到的疑惑知识点总结
2017/01/20 Javascript
Vuejs实现带样式的单文件组件新方法
2017/05/02 Javascript
JavaScript 中定义函数用 var foo = function () {} 和 function foo()区别介绍
2018/03/01 Javascript
Vue-CLI与Vuex使用方法实例分析
2020/01/06 Javascript
vue 实现把路由单独分离出来
2020/08/13 Javascript
js和jquery判断数据类型的4种方法总结
2020/08/28 jQuery
VUE前端从后台请求过来的数据进行转换数据结构操作
2020/11/11 Javascript
[00:55]深扒TI7聊天轮盘语音出处3
2017/05/11 DOTA
python处理文本文件并生成指定格式的文件
2014/07/31 Python
python scp 批量同步文件的实现方法
2019/01/03 Python
Python3.8中使用f-strings调试
2019/05/22 Python
解决Jupyter无法导入已安装的 module问题
2020/04/17 Python
python让函数不返回结果的方法
2020/06/22 Python
canvas之自定义头像功能实现代码示例
2017/09/29 HTML / CSS
ALLSAINTS英国官网:伦敦新锐潮流品牌
2016/09/19 全球购物
医学护理系毕业生求职信
2013/10/01 职场文书
2014两会学习心得:时代的发展
2014/03/17 职场文书
土地转让协议书
2014/09/27 职场文书
2015初中政教处工作总结
2015/07/21 职场文书
Nginx域名转发使用场景代码实例
2021/03/31 Servers