织梦二次开发,二次开发,李丕长,网站php二次开发,做网站,模板设计,jquery效果,jquery特效

当前位置: 主页 > Codeigniter&ThinkPHP >

Thinkphp 通过Controller找对应的模板

时间:2014-02-18 12:56作者:LEO 点击:
在方法中使用$this-display();就可以加载当前类方法的模板; 例子: 类:IndexAction.class.php 保存在文件夹Lib/action/下的 类内容为: classIndexActionextendsAction{ publicfunctionindex(){ $ name = 'lipichang'

 在方法中使用$this->display();就可以加载当前类方法的模板;

例子:

类:IndexAction.class.php  保存在文件夹Lib/action/下的

类内容为:

 

  1. class IndexAction extends Action { 
  2.     public function index(){ 
  3.         $name = 'lipichang'
  4.  
  5.     $this->assign('yourname',$name);//赋值给模板 
  6.         $this->display();//加载模板 
  7.     } 
  8.  

 

以上模板其实已经加载进来:

模板对应的地址为

项目目录/Application/Tpl/Index/index.html

Application:我的应用的目录可以自动生成的,Tpl模板文件夹 

Index文件夹为对应的类名去掉Action(本类名为IndexAction)

index.html 对应的是 function index() 的方法名 index

赋值变量给模板

$this->assign('yourname',$name);//赋值给模板

 

对应的index.html 文件夹的内容为:

 

 

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
  2.   
  3. <html xmlns="http://www.w3.org/1999/xhtml"> 
  4.  
  5. <head> 
  6.     <title>Hello World!!!</title> 
  7.     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
  8. </head> 
  9. <body> 
  10. {$yourname} 
  11. </body> 
  12. </html> 

$this->assign('yourname',$name);//赋值给模板

模板中调用就使用{yourname}  大括号为thinkphp自带的模板解析符号

如何修改这个模板变量解析符号呢?

我们需要更改配置文件:配置文件位置为

项目目录/Application/Conf/config.php

此文件里面并起初并没有任何东西 都需要配置 并且此文件只反问一个数组所有的配置项都在这个数组中即可

 

  1. return array( 
  2.      
  3.     'URL_MODEL' =>  2, // 如果你的环境不支持PATHINFO 请设置为3 
  4.     'DB_TYPE'   =>  'mysql', 
  5.     'DB_HOST'   =>  'localhost', 
  6.     'DB_NAME'   =>  'lpc', 
  7.     'DB_USER'   =>  'root', 
  8.     'DB_PWD'    =>  '', 
  9.     'DB_PORT'   =>  '3306', 
  10.     'DB_PREFIX' =>  'lpc_', 
  11.    'URL_PATHINFO_DEPR' => '/',//url斜杆定义成其他形式,修改url的分隔符你可以修改/为- 
  12.    'TMPL_L_DELIM' => '<{',//修改模板变量输出定界符 左边 
  13.    'TMPL_R_DELIM' => '}>'//修改模板变量输出定界符 右边 
  14. ); 

使用

  1.    'TMPL_L_DELIM' => '<{',//修改模板变量输出定界符 左边 
  2.    'TMPL_R_DELIM' => '}>'//修改模板变量输出定界符 右边 

来修改左右两边的定界符,在模板上用于变量的输出

我改成上面这种的时候 模板需要改成

 

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
  2.   
  3. <html xmlns="http://www.w3.org/1999/xhtml"> 
  4.  
  5. <head> 
  6.     <title>Hello World!!!</title> 
  7.     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
  8.  
  9. </head> 
  10. <body> 
  11. 改变定界符之后输出:<{$yourname}> 
  12.  
  13. </body> 
  14. </html> 

 

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
无觅相关文章插件,快速提升流量