Commit Graph

36 Commits

Author SHA1 Message Date
thinkphp
fa897d927b 注释调整 2016-01-04 08:51:03 +08:00
thinkphp
939d920696 标签库的默认标签定界符 更改为 { 和 } 避免ide报错 2016-01-02 23:07:10 +08:00
thinkphp
a807dbce81 改进template类parseTemplateFile方法支持跨模块调用模板
route类method路由参数支持使用 GET|POST 选择多种请求
2015-12-31 20:46:13 +08:00
oldrind
a6723f050f 修正extend不能解析完整模板路径的问题
修正.语法自动识别数组和对象不能正确解析的问题
2015-12-29 14:08:44 +08:00
thinkphp
b1de2d21bc 修正模板引擎的函数解析 2015-12-27 16:09:45 +08:00
thinkphp
1802e641a9 修正多余代码 2015-12-27 15:14:39 +08:00
thinkphp
9060a4dd8c 修正template一处解析错误 2015-12-27 15:12:41 +08:00
thinkphp
a746982703 驱动设计支持使用 namespace配置改变默认命名空间位置 2015-12-26 17:59:07 +08:00
thinkphp
bd322b82e5 改进一处引用传值 2015-12-26 12:06:43 +08:00
thinkphp
1b61dab806 修正taglib类的一处配置调用错误 增加 traits\controller\response 2015-12-24 11:16:16 +08:00
yin
e216563b09 改进了标签替换方式,不需要递归进用替换,效率提升,也不用再限制标签嵌套层数。
1. 兼容原来所有的标签功能和用法,已 对正则进行了优化,标签库和内置的普通标签可以使用一样的边界符,比如都用"{}",只要不重名不会相互干扰,这样这些标签就可以和html标签区分开。

 2. 模板支持多级继承。C继承B,而B又继承了A,C中的block会覆盖B和A中的同名block。

 3. include标签支持多层嵌套,可以传变量。如:
include file="Public/nav" selected="{$id}"
 在Public/nav模板用[selected]得到的是[$id}被解析后的值,而在3.2版中这样的写法是不能正确得到{$id}的值的。

 4. 增强了.语法的应用范围
 {$user.name.$group.name} 解析后是 <?php echo $user['name'].$group['name']; ?>
 {:substr($varname.aa, $varname.bb)} 解析后是 <?php echo substr($varname['aa'], $varname['bb']); ?>
 .语法在各个标签中都可以使用,$a.b.c这样的形式都能正确解析成$a['b']['c']

 5. 增加了一些新的语法
 {$varname.aa ?? 'xxx'} 表示如果有设置$varname则输出$varname,否则输出'xxx'。 解析后的代码为: <?php echo isset($varname['aa']) ? $varname['aa'] : '默认值'; ?>
 {$varname?='xxx'} 表示$varname为真时才输出xxx。 解析后的代码为: <?php if(!empty($name)) echo 'xxx'; ?>
 {$varname ?: 'no'} 表示如果$varname为真则输出$varname,否则输出no。解析后的代码为: <?php echo $varname ? $varname : 'no'; ?>
 {$a==$b ? 'yes' : 'no'} 前面的表达式为真输出yes,否则输出no, 条件可以是==、===、!=、!==、>=、<=

 6. 对if标签及foreach也加了一些更简洁的用法
{if condition="表达式"}
{if (表达式)}
{if 表达式}
这三种写法结果是一样的
{foreach $list as $v} 解析后是最简洁的,只一个foreach语句
{foreach name="list" item="v“} 这僦是原来的写法,解析后foreach外层会多一if判断,item换成id也可以
{foreach name="list" id="v" key="key" index="i" mod="2" offset="2" length="5"}
volist上的功能,foreach都有,只是volist默认会带上一些参数,而foreach需要指定这些参数才会生效
2015-12-24 00:41:48 +08:00
thinkphp
7ecfdaf41c Merge branch 'master' of https://github.com/top-think/think 2015-12-23 10:38:07 +08:00
thinkphp
ca79fbb875 修正template和taglib类的session标签解析 2015-12-23 10:37:33 +08:00
thinkphp
247b76d9c0 点语法输出自动识别 2015-12-21 23:35:59 +08:00
thinkphp
b209bf5978 修正layout解析模板 2015-12-21 07:43:48 +08:00
thinkphp
40153f4fd8 改进template类的parseTemplateFile方法 支持读取当前主题 2015-12-20 19:13:15 +08:00
Haotong Lin
66f433330d 修复switch...case模板标签嵌套解析错误 2015-12-17 13:28:28 +08:00
thinkphp
ab6cdebb91 修正templae类 2015-12-17 11:58:35 +08:00
Chino Chang
ce0c1a8643 fix #60 2015-12-15 15:03:11 +08:00
thinkphp
ad0e03c868 更改默认的模板缓存目录 2015-12-14 22:04:56 +08:00
thinkphp
9444419dd3 视图类fetch方法cache参数调整 2015-12-13 21:25:32 +08:00
thinkphp
af19146ec0 错误编码 2015-12-12 08:16:59 +08:00
thinkphp
7b0fe7286d 增加sae相关驱动 2015-12-10 15:17:32 +08:00
thinkphp
9a2ff2f231 改进实例化类 命名空间大小写的问题 2015-12-10 12:11:33 +08:00
thinkphp
c14da999a6 规范调整 2015-10-04 22:48:57 +08:00
thinkphp
27e724bb3c PSR规范调整 2015-10-04 13:05:15 +08:00
thinkphp
1cfb3704c6 规范调整 2015-10-03 21:43:48 +08:00
thinkphp
7bb958636e 更新核心 2015-03-27 15:38:46 +08:00
thinkphp
aa123aa8a2 更新核心文件 2015-03-26 16:15:35 +08:00
huangdijia
3af5f0a766 替换模板引擎中session、cookie的调用方法 2015-03-03 18:43:28 +08:00
huangdijia
71801e0554 取代模板引擎中的单字母方法 2015-03-03 18:41:28 +08:00
huangdijia
4ef5a0bcba 使用新的自动加载机制
preg_replace_callback取代/e模式
2015-03-03 18:33:47 +08:00
thinkphp
d28e27270c 类库别名和调用修正
增加sae日志驱动
改进Hook类的exec方法
行为扩展优先检测标签方法 不存在则调用run方法
NOW_TIME改用REQUEST_TIME_FLOAT
变量命名规范
2015-02-24 10:45:34 +08:00
thinkphp
e96ac8493f session类和input类调整
注释调整
2015-02-23 20:54:16 +08:00
huangdijia
55adc28ac0 修正 命名空间大小写 2015-01-24 09:32:35 +08:00
thinkphp
b32d00b7f8 更新 2015-01-22 09:29:54 +08:00