ThinkPHP模板替换与系统常量及应用实例教程


Posted in PHP onAugust 22, 2014

本文讲述了ThinkPHP模板替换与系统常量及应用,是ThinkPHP项目开发的基础知识,有必要加以牢固掌握。具体如下:

默认的模板替换规则:

../Public : 会被替换成当前项目的公共模板目录 通常是 / 项目目录 /Tpl/default/Public/
__PUBLIC__ :会被替换成当前网站的公共目录 通常是 /Public/
__TMPL__ : 会替换成项目的模板目录 通常是 / 项目目录 /Tpl/default/
__ROOT__ : 会替换成当前网站的地址(不含域名)
__APP__ : 会替换成当前项目的 URL 地址 (不含域名)
__URL__ : 会替换成当前模块的 URL 地址(不含域名)
__ACTION__ :会替换成当前操作的 URL 地址 (不含域名)
__SELF__ : 会替换成当前的页面 URL

还可以通过在项目配置文件中配置TMPL_PARSE_STRING的值来自定义替换规则,如:

TMPL_PARSE_STRING => array(
   '__PUBLIC__' => '/Common' ,  // 更改默认的 __PUBLIC__ 替换规则
   '__UPLOAD__' => '/Public/Uploads/' ,  // 增加新的上传路径替换规则
)

示例:

文件路径:/Home/Tpl/default/User/index.html,代码如下:

<p>__ROOT__代表当前网站的网址</p>
 <p>__URL__代表当前模块的URL地址/index.php/User</p>
 <p>../Public代表/aoli/Tpl/default/Public</p>
 <p>__PUBLIC__代表项目公共文件目录/Public</p>
 <p>__TMPL__代表当前项目的模板目录/aoli/Tpl/default/</p>
 <p>__APP__代表当前项目的入口文件地址/index.php</p>
 <p>__ACTION__代表当前的操作地址/index.php/User/index</p>
 <p>__SELF__代表当前URL地址/index.php/User/</p>
 <p>__UPLOAD__</p>
 <form action="__URL__/add" method="post">
  <input type="text" name="username" />
  <input type="submit" value="注册" />
 </form>

文件路径:/Home/Lib/Action/UserAction.class.php,代码如下:

<?php
 class UserAction extends Action {
    function index(){
      $this->display();     
    }
    function add(){
      dump($_POST);   
    }
 }
?>

访问路径:http://localhost/index.php/User/index输入内容,点击注册按钮后跳转到http://localhost/index.php/User/add并执行User模块下的add方法,输出提交的内容。

希望本文所述对大家的ThinkPHP程序设计有所帮助。

PHP 相关文章推荐
PHP+.htaccess实现全站静态HTML文件GZIP压缩传输(一)
Feb 15 PHP
PHP中str_replace函数使用小结
Oct 11 PHP
php将会员数据导入到ucenter的代码
Jul 18 PHP
mysql_num_rows VS COUNT 效率问题分析
Apr 23 PHP
php cc攻击代码与防范方法
Oct 18 PHP
探讨PHP调用时间格式的参数详解
Jun 06 PHP
解析如何通过PHP函数获取当前运行的环境 来进行判断执行逻辑(小技巧)
Jun 25 PHP
PHP的pcntl多进程用法实例
Mar 19 PHP
PHP抓取远程图片(含不带后缀的)教程详解
Oct 21 PHP
PHP控制反转(IOC)和依赖注入(DI)
Mar 13 PHP
一文掌握PHP Xdebug 本地与远程调试(小结)
Apr 23 PHP
JS操作XML中DTD介绍及使用方法分析
Jul 04 PHP
ThinkPHP调试模式与日志记录概述
Aug 22 #PHP
ThinkPHP连接数据库及主从数据库的设置教程
Aug 22 #PHP
ThinkPHP实例化模型的四种方法概述
Aug 22 #PHP
ThinkPHP中的create方法与自动令牌验证实例教程
Aug 22 #PHP
ThinkPHP基本的增删查改操作实例教程
Aug 22 #PHP
ThinkPHP自动填充实现无限级分类的方法
Aug 22 #PHP
ThinkPHP验证码和分页实例教程
Aug 22 #PHP
You might like
PHP在XP下IIS和Apache2服务器上的安装
2006/09/05 PHP
php 获取select下拉列表框的值
2010/05/08 PHP
PHP解析html类库simple_html_dom的转码bug
2014/05/22 PHP
php实现给一张图片加上水印效果
2016/01/02 PHP
Zend Framework入门教程之Zend_View组件用法示例
2016/12/09 PHP
PHP里面把16进制的图片数据显示在html的img标签上(实现方法)
2017/05/02 PHP
使用PHPStorm+XDebug搭建单步调试环境
2017/11/19 PHP
Node.js中AES加密和其它语言不一致问题解决办法
2014/03/10 Javascript
在线所见即所得HTML编辑器的实现原理浅析
2015/04/25 Javascript
JavaScript入门基础
2015/08/12 Javascript
原生js封装二级城市下拉列表的实现代码
2016/06/16 Javascript
Mongoose学习全面理解(推荐)
2017/01/21 Javascript
基于javascript实现数字英文验证码
2017/01/25 Javascript
javascript 删除数组元素和清空数组的简单方法
2017/02/24 Javascript
使用jquery datatable和bootsrap创建表格实例代码
2017/03/17 Javascript
webpack3里使用uglifyjs压缩js时打包报错的解决
2018/12/13 Javascript
详解项目升级到vue-cli3的正确姿势
2019/01/28 Javascript
vue多次循环操作示例
2019/02/08 Javascript
微信小程序五子棋游戏AI实现方法【附demo源码下载】
2019/02/20 Javascript
vue全局使用axios的操作
2020/09/08 Javascript
手动实现vue2.0的双向数据绑定原理详解
2021/02/06 Vue.js
[02:20]2014DOTA2西雅图邀请赛 MVP外卡赛首胜采访
2014/07/09 DOTA
Python魔术方法详解
2015/02/14 Python
你所不知道的Python奇技淫巧13招【实用】
2016/12/14 Python
flask-socketio实现WebSocket的方法
2018/07/31 Python
pycharm 在windows上编辑代码用linux执行配置的方法
2018/10/27 Python
python实现全盘扫描搜索功能的方法
2019/02/14 Python
基于python二叉树的构造和打印例子
2019/08/09 Python
python 使用pygame工具包实现贪吃蛇游戏(多彩版)
2019/10/30 Python
python shutil文件操作工具使用实例分析
2019/12/25 Python
优秀应届生推荐信
2013/11/09 职场文书
环保建议书作文
2014/03/12 职场文书
文明寝室标语
2014/06/13 职场文书
事业单位财务人员岗位职责
2015/04/14 职场文书
Java练习之潜艇小游戏的实现
2022/03/16 Java/Android
Java实现贪吃蛇游戏的示例代码
2022/09/23 Java/Android