ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# 循环与判断 ## 循环显示数据 传递给模板的变量中有可能是二维数组,例如新闻列表、商品列表等,我们就需要循环输出这些数据。 循环数据使用 foreach($allData as $rowData){}语句。 #### 例如: 我们在控制器中按照数据库中读取出数据的形式,模拟一些测试数据,然后传给display()方法。 ~~~ class IndexController extends Controller{ public function index(){ //模拟数据库中读取出来的数据样式 $list = array( array('gid'=>11, 'name'=>'电脑', 'price'=>'2000元'), array('gid'=>22, 'name'=>'手机', 'price'=>'1000元'), array('gid'=>33, 'name'=>'U盘', 'price'=>'90元') ); $this->display($list); } } ~~~ 在模板文件中调用输出如下: ~~~ <!doctype html> <html> <head> <meta charset="utf-8"> <title>MAGPHP框架</title> </head> <body> <ul> <? foreach($list as $key=>$row) { ?> <li> KEY:<?=$key?> / 编号:<?=$row['gid']?> / 名称:<?=$row['name']?> / 价格:<?=$row['price']?> <hr/> </li> <? } ?> </ul> </body> </html> ~~~ >[warning] 除了使用foreach外还可使用php中for等循环语句。 <br/><br/><br/> ## 判断操作 根据传递到模板的变量,使用判断输出不同的内容 例如: ~~~ class IndexController extends Controller{ public function index(){ $age = 20; $this->display($age); } } ~~~ ~~~ <!doctype html> <html> <head> <meta charset="utf-8"> <title>MAGPHP框架</title> </head> <body> <? if($age > 18) { ?> <h1>年龄 大于18岁</h1> <? }else{ ?> <h1>年龄 小于18岁</h1> <? } ?> </body> </html> ~~~ >[warning] 除了使用if外还可使用php中任何判断语句比如switch等。 <br/><br/>