【问题标题】:cakephp foreach loop only display the first letter from titlecakephp foreach 循环只显示标题的第一个字母
【发布时间】:2016-04-21 10:05:11
【问题描述】:

我想从数据库中显示data,并且我在model file 中创建了函数,它显示来自数据库的数据,但所有值都显示在array format 中。

问题是当我在 foreach 循环中打印 echo $values['title']; 时,它只显示来自 title 数组的第一个字母??

型号代码

 function reviewcitypage()  
 {

 $cacheKey = 'city_page';
 GigaCache::set(array('duration'=>"+1 minutes",'path'=>CACHE));
 $cachedCategoryData = GigaCache::read($cacheKey);

    if($cachedCategoryData && !cr('DynamicPage.field'))
    {   
        $recentactivity = $cachedCategoryData;
    }else
    {
        $recentactivity= $this->find("list",array("conditions"=>array("status"=>1),'fields'=>array('title','body','rating'),'recursive'=>-1,'limit'=>10));  
        //dont't set cache if dynamic field
        if(!cr('DynamicPage.field'))
        {
          GigaCache::set(array('duration'=>"+1 minutes",'path'=>CACHE));
          GigaCache::write($cacheKey,$recentactivity);
        }
    }


    return $recentactivity;

}

查看文件

$ReviewObj = cri('Review');
      $recentactivity = $ReviewObj->reviewcitypage();

      foreach ($recentactivity as $name => $value){ 

          foreach($value as $values)
            {             
                echo $values['title'];
            }
      }

**问题已解决,感谢支持**

i have changed the code in model file and it is woking now

$recentactivity= $this-
>find("all",array("conditions"=>array("status"=>1),'recursive'=>-1,
'limit'=>10));  

【问题讨论】:

  • echo "<pre/>";print_r($recentactivity); 的输出是什么。给我们看
  • @Anant 我想在视图文件中将data 显示到不同的 div 中

标签: php cakephp module model controller


【解决方案1】:

您的 find() 查询正在将数据准备为 'list'。在蛋糕列表中始终是键 => 值对数组。因此,在您看来,当您使用第二个 foreach 循环时,您是在说 foreach 字符串中的字符...做.....

在您的示例中,$value 只能是字符串。 foreaching 它只能使 $values 成为单个字符。

如果您仍然不确定我的意思,请告诉我。不擅长解释我的意思

http://book.cakephp.org/2.0/en/models/retrieving-your-data.html#find-list

因为您需要 3 个字段,所以我建议使用 firstall 代替 list 作为 find() 方法中的第一个参数。

【讨论】:

  • jason 你有什么例子我如何从模型文件中显示视图文件中的数据??
  • 好吧,因为您在 3 个字段之后,我建议使用 'first'all 代替 list 作为 find() 方法中的第一个参数。您选择list 作为返回类型的理由是什么?
  • 我面临的问题是我想在视图文件中显示数据??你有Skype吗?
  • 请告诉我们您的问题的解决方案
  • 我已经更改了模型文件中的代码,现在可以使用list to all
猜你喜欢
  • 2014-05-30
  • 2012-07-15
  • 2014-08-27
  • 2014-03-01
  • 1970-01-01
  • 1970-01-01
  • 2022-06-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多