UserAction.class.php文件部分代码:
public function register(){
   
$user = D('User');
    $arr=$user->field('name')->select();
    $this->assign("Name",$arr);
   //print_r($arr);
  $this->display();
}模板tpl部分代码:
.......
  <foreach name="Name" item="my">
   {$my.name}
  </foreach>
........cache里面部分代码:
 <?php if(is_array($)): foreach($ as $key=>$): echo ($my["name"]); endforeach; endif; ?>请问为什么实现不了标签for和foreach的循环输出呢?thinkPHP  foreach

解决方案 »

  1.   

    你不是有 print_r($arr); 吗?
    贴出结果看看
      

  2.   

    print_r($arr); 可以正常打印出来,只是在模板里面就不能循环输出了。只是一直对cache里面的 <?php if(is_array($)): foreach($ as $key=>$): echo ($my["name"]); endforeach; endif; ?>这部分代码很郁闷,不知道为什么foreach不能获取数组的值,请问一下这是什么问题?
      

  3.   

    让你贴出 print_r($arr); 的结果,你为什么就不肯呢?哪怕片段也好
      

  4.   

    不好意思啊,呵呵,,,现在我把打印的结果给你看看,指导一下我这个菜鸟。
    这是打印出来的结果:
    Array
    (
        [0] => Array
            (
                [name] => qqq
            )    [1] => Array
            (
                [name] => rtrt
            )    [2] => Array
            (
                [name] => uuuu
            )    [3] => Array
            (
                [name] => fff
            ))为什么在模板里面用foreach就是循环输不出?
      

  5.   

    主要是编译后的文件:  <?php if(is_array($)): foreach($ as $key=>$): echo ($my["name"]); endforeach; endif; ?>,if(is_array($))里面没有数组,这是怎么回事?
      

  6.   


    {volist name="arr" id="vo"}
    {$vo.name}
    {/volist}
      

  7.   

    ThinkPHP 自带模板的foreach 功能没有 volist 强大
    <foreach name="list" item="vo">
        {$vo.id}
        {$vo.name}
    </foreach>