ThinkPHP循环标签的使用

这篇文章的环境与《ThinkPHP框架试用》一文大致相同,区别在于我更改了入口文件,将项目文件单独放在一个文件夹下,方便管理!更改后的入口文件大致如下:
<? php
define ( ' THINK_PATH ' ,   ' ThinkPHP/ ' );
define ( ' APP_NAME ' ,   ' myApp ' );
define ( ' APP_PATH ' ,   ' myapp ' );
require (THINK_PATH . " /ThinkPHP.php " );
$App   =   new  App();
$App -> run();
?>

就改动了一句。试过了ThinkPHP的模板功能了,可是只用到了普通的模板替换,ThinkPHP可是支持循环标签模板的,看了看附带的例子,弄明白了它的使用方法!模板文件代码如下(index.html):

< html >
< head >< title > {$title} </ title ></ head >
< body >
{$content}
< br >
< ul >
< volist  name ="list"  id ="news" >
< li > {$news.title} </ li >
</ volist >
</ ul >
</ body >
</ html >

看到了吧!volist里面就是嵌套的循环模板,注意观察它的属性id,并留意name属性,再来看看代码文件

<? php 
//  本类由系统自动生成,仅供测试用途
class  IndexAction  extends  Action{
    
public   function  index(){
        
header ( " Content-Type:text/html; charset=utf-8 " );
        
$this -> assign( ' title ' , ' 循环标签的例子 ' );
        
$this -> assign( ' content ' , ' 循环标签 ' );
        
// 这里没有连接数据库,我用数组建立了部分测试数据,用两种方式添加数据
         $news = array ( array ( ' title ' => ' Title1 ' ) , array ( ' title ' => ' Title2 ' ));
        
array_push ( $news , array ( ' title ' => ' Title3 ' ));
        
// 注意到这里的list就是模板中volist的name 
         $this -> assign( ' list ' , $news );
        
$this -> display();
    }
}

建立了一个二维数组做测试数据,替换后的结果如下:

< html >  
< head >< title > 循环标签的例子 </ title ></ head >  
< body >  
循环标签
< br >  
< ul >  
< li > Title1 </ li >< li > Title2 </ li >< li > Title3 </ li ></ ul >  
</ body >  
</ html >
使用起来相当的简单!

你可能感兴趣的:(thinkphp)