tp5总结(二)
1.简化路由【一方面可以更好的让搜索引擎抓取;另一方面简化路由,利于记忆】
1-1.在【public/】下面创建admin.php 复制index.php 然后绑定前后台模块define('BIND_MODEL','admin')和define('BIND_MODEL',index')
eg:http://ww:7070/tp5-2/public/admin和http://ww:7070/tp5-2/public/index
1-2. 隐藏入口文件
开启Apache的配置文件,将LoadModule rewrite_module modules/mod_rewrite.so前面的注释去掉
eg:http://ww:7070/tp5-2/public/index/index
1-3.隐藏public,将index.php入口文件放在根目录下,并且修改相对路径
2.路由
2-1.关闭后台模块的路由:public/admin后面写 【\think\app:route(false)】
2-2.路由模式,修改config.php [url_route_on和url_route_must]
2-3.修改route.php来修改路由
2-3-1.静态路由 eg:http://ww:7070/tp5-2/
use \think\Route;
Route::rule('/','admin/index/index');
2-3-2.动态静态组合
2-3-3.所有路由
<?php
//配置文件注册方式
//return [
// '__pattern__' => [
// 'name' => '\w+',
// ],
// '[hello]' => [
// ':id' => ['Index/hello', ['method' => 'get'], ['id' => '\d+']],
// ':name' => ['Index/hello', ['method' => 'post']],
// ],
//
//];
use think\Route;
Route::rule('/','Index/Index/index1');
Route::rule('canshu/:id','Index/Index/canshu');//带一个参数
Route::rule('time/:year/:month','Index/Index/time');//带两个个参数
Route::rule('kexuan/:year/[:month]','Index/Index/kexuan');//带两可选参数
Route::rule(':a/:b','Index/Index/dongtai');//全动态路由[不建议用]
Route::rule('wanquan$','Index/Index/wanquan');//全动态路由[不建议用] //设定路由类型
// Route::rule('type','Index/Index/type','post|get');//即支持get又2支持post //支持所有 //Route::rule('type','Index/Index/type','*');//支持所有
//Route::any('type','Index/Index/type');//支持所有 //put请求
//Route::rule('type','Index/Index/type','put'); //批量注册
//Route::rule([
// 'd1'=>'admin/index/test1',
// 'd2'=>'admin/index/test2'
//],'','get');
Route::get([
'd1'=>'admin/index/test1',
'd2'=>'admin/index/test2'
]); //路由规则
Route::rule('d3/:id','admin/index/test3','get',[],['id'=>'\s+']);//参数必须是数字
//Route::rule('d3/:id','admin/index/test3',[],['id'=>'\d{1,3}']);//参数必须是数字1-3位 //资源路由 会默认注册七个路由规则 index
Route::resource('myblog','index/myblog'); //快捷路由
//Route::controller('myblog','index/myblog');
3.路由地址生成 eg:http://ww:7070/tp5-2/public/myblog
tp5总结(二)的更多相关文章
- php(tp5) 生成二维码
phpqrcode类库官网下载地址:https://sourceforge.net/projects/phpqrcode/ 1.我们先看看php是怎么生成二维码的 1.首先我们先下载一下 phpqr ...
- TP5 生成二维码
首先下载这个类:http://phpqrcode.sourceforge.net/ 把下载的文件放到vendor下面 public function getWchatQrcode($users_id= ...
- tp3.x和tp 5的区别
由于TP5.0是一个全新的颠覆重构版本,所以现在面试很多面试官喜欢问TP3.2和TP5之间的区别,那他们之间到底有哪些区别呢?一.目录 TP5目录 二.需要摒弃的 3.X 旧思想 模型的变动 ...
- TP5学习基础二:目录结构、URL路由、数据操作
一.安装1.使用git或者composer(composer update)进行实时更新,区别在于git不会清空核心框架目录而composer会清空.2.使用官网打包好的TP压缩包(解压即可用)-&g ...
- 百度编辑器前后端二开图片上传Js Thinkphp tp5 ueditor
百度编辑器图片上传Jsueditor.all.min.js 下载链接 链接:https://pan.baidu.com/s/1VNgw9ELgRRHKeCQheFkQTw 提取码:fnfi 使用方法: ...
- tp5生成小程序推广二维码
//获取用户经销商信息 及生成推广二维码 public function qrcode() { //拿到openid 查找用户表内是否有该用户 没有则拒绝生成二维码 有则查看是否已生成二维码 有生成则 ...
- tp5 thinkphp 使用phpqrcode生成带Logo的二维码
1 下载生成二维码类库 composer require aferrandini/phpqrcode 2 点击按钮下载 //二维码下载 public function down_qrcode() { ...
- TP5.0源生Excel导出
PHPExcel类在TP5里边并不能很好的兼容,使用起来很麻烦. 不像是tp3.2那样直接import()加进来就能new,因为它里边的命名空间找不到.总是说undefined class. 如果是使 ...
- tp5框架的获取器
tp5的获取器功能很强大,一下子就喜欢上了,你可以在模块里任意定义表里不存在的字段,在前台调用很方便.话不多说直接上demo: 1.命名规则 get + 属性名的驼峰命名+ Attr 直接就能在m ...
随机推荐
- 微信网页动画---swiper.animate.css
项目需要,自己写了个demo <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...
- 当python模式遇见cedet
TAG: emacs, python, cedet, semantic, ctags DATE: 2013-08-20 我用Emacs 24写python程序. 发现屏幕不时有些闪动,MiniBuff ...
- java学习第02天(语言基础组成:关键字、标识符、注释、常量和变量)
Java语言基础组成 1. 关键字 就是指的一些单词,这些单词被赋予了特殊的java含义,就不再叫单词了. 例如: class Demo{ public static void main(String ...
- 【转换】Bean、List、Map、Array、String与JSON字符串的相互转换
import java.beans.Introspector; import java.beans.PropertyDescriptor; import java.math.BigDecimal; i ...
- F. Make It Connected(krustra+)
题目链接:http://codeforces.com/contest/1095/problem/F 题目大意:首先给你n个点,然后给你每个点的权值,再给你m条边,这些边可以选也可以不选,然后问你要使这 ...
- 假·最大子段和 (sdutoj 4359 首尾相连)(思维)
题目链接:http://acm.sdut.edu.cn/onlinejudge2/index.php/Home/Contest/contestproblem/cid/2736/pid/4359 具体思 ...
- 跳出python的各种坑(1)
2017-11-1915:38:17 一定要跳出python的各种坑,一开始遇到的好多思维上的认知错误,因为刚开始学习,对python是个什么都不清楚,所以记录一下自己遇到的各种坑.不用担心自己遇到的 ...
- 深度解析:python之浅拷贝与深拷贝
深度解析python之浅拷贝与深拷贝 本文包括知识点: 1.copy与deepcopy 2.可变类型与不可变类型 1.copy与deepcopy 在日常python编码过程中,经常会遇见变量的赋值.这 ...
- Django集成Xadmin list index out of range报错解决方案
return self.render(context) File "C:\Python36\lib\site-packages\django\template\defaulttags.py& ...
- 使用UDP和TCP协议的各种应用和应用层协议
IGMP和ICMP是传输层协议