-
注意:common 模块比较特殊,如何访问?如图
查看全部 -
扩展配置会替换掉应用配置
查看全部 -
ul#nav>li*4>a[href=""]{菜单$$}>
快捷生成htm标签
<li><a href="">菜单01</a></li>
<li><a href="">菜单02</a></li>
<li><a href="">菜单03</a></li>
<li><a href="">菜单04</a></li>查看全部 -
<!--eq equal--> {eq name="a", value="100"} 1111 {else/} 2222 {/eq} {neq name="a", value="100"} 1111 {else/} 2222 {/neq} {equal name="a", value="100"} 1111 {else/} 2222 {/equal} {notequal name="a", value="100"} 1111 {else/} 2222 {/notequal}
查看全部 -
{volist name="list", id="vo" key="name" empty="没有数据"} <p> {$vo.email} </p> <p> {$name} </p> {/volist} {foreach name="list", key="name", item="value"} <p>{$name}:{$value.email}</p> {/foreach} {for name="s", start="1", end="10", step="2"} <p>{$s}</p> {/for}
查看全部 -
tp5注释
{/*这里是注释*/}
这样的注释 并不会产生源代码 可尽情描述
查看全部 -
原样输出
可以使用
literal
标签来防止模板标签被解析,例如:{literal} Hello,{$name}!{/literal}
上面的
{$name}
标签被literal
标签包含,因此并不会被模板引擎解析,而是保持原样输出。literal标签还可以用于页面的JS代码外层,确保JS代码中的某些用法和模板引擎不产生混淆。
总之,所有可能和内置模板引擎的解析规则冲突的地方都可以使用
literal
标签处理。需要注意的是配置‘view_replace_str’替换参数,会替换掉
literal
标签内的内容,可以配置‘template.tpl_replace_string’避免替换掉literal
标签内的内容。查看全部 -
系统变量输出
支持输出
$_SERVER
、$_ENV
、$_POST
、$_GET
、$_REQUEST
、$_SESSION
和$_COOKIE
变量。在view 页面
{$Think.server.script_name} // 输出$_SERVER['SCRIPT_NAME']变量{$Think.session.user_id} // 输出$_SESSION['user_id']变量{$Think.get.pageNumber} // 输出$_GET['pageNumber']变量{$Think.cookie.name} // 输出$_COOKIE['name']变量
查看全部 -
View.php
/** * 构造函数 * @access public * @param array $engine 模板引擎参数 * @param array $replace 字符串替换参数 */ public function __construct($engine = [], $replace = []) { // 初始化模板引擎 $this->engine($engine); // 基础替换字符串 $request = Request::instance(); $base = $request->root(); $root = strpos($base, '.') ? ltrim(dirname($base), DS) : $base; if ('' != $root) { $root = '/' . ltrim($root, '/'); } $baseReplace = [ '__ROOT__' => $root, '__URL__' => $base . '/' . $request->module() . '/' . Loader::parseName($request->controller()), '__STATIC__' => $root . '/static', '__CSS__' => $root . '/static/css', '__JS__' => $root . '/static/js', ]; $this->replace = array_merge($baseReplace, (array) $replace); }
查看全部 -
系统默认变量
__STATIC__
__URL__
__JS__
__CSS__
__ROOT__
查看全部 -
'tpl_replace_string' => [ '__STATIC__' => Env::get('STATIC_PATH', '/static'), '__COMMON__' => Env::get('STATIC_PATH', '/static') . '/common', ]
查看全部 -
请求对象:request
响应对象:response
thinkphp5中不允许在方法中 die()
修改default_return_type 为xml 或者json
fe助手插件将页面的json数据直接格式化
查看全部 -
本章讲述绑定,设置默认的打开url 打开的默认目录位置查看全部
-
单入口文件:应用程序的所有http请求都由某一个文件接受并由这个文件转发到功能代码中
tp5框架所有的http请求都会经过public下的index.php,通过不同的参数,将请求分配到不同的控制器中,不同的控制器执行不同的操作,最终实现功能。
单入口文件优势
安全(多入口框架要在每个入口文件中进行安全检测机制)
请求过滤(在入口文件中可以过滤掉无效的请求)
查看全部 -
1、关于入口文件的绑定
如果开启入口文件自动绑定的操作
在配置文件config中将'auto_bind_module' => true, 设置为true
则访问入口文件时 系统会自动找到和入口文件名一致的模块 就不用输入模块名了 如localhost/api.php/index/index == localhost/api/index/index
这种方式 和在入口文件定义常量 define('BIND_MODULE', 'api'); 效果一样
区别为:如果befine 绑定的模块不存在,则报错,而config配置则不会,会直接访问其他模块
查看全部
举报