PHP函数:从循环返回数据

时间:2014-07-22 11:45:31

标签: php arrays function loops return

我想使用一个函数从我的数据库动态加载我的网站上的新闻源,我已经创建了一个函数,其中包含来自特定用户等的帖子类型的变量,我想运行一段时间()像往常一样循环返回每个帖子,虽然如何在函数内完成?我尝试运行循环并设置我想要在单个变量中显示的内容,然后在该循​​环中返回,我希望它每次在循环内运行一个返回,并且函数将逐个回显每个当我从逻辑上思考它时,显然不会发生这种情况,那么有人可以解释如何实现这一目标吗?

示例(类似)代码:

访问该功能:

<?php echo getNews(); ?>

功能:

<?php function getNews(){
//query stuff
while($row = mysql_fetch_array($result)){
     $return = "Looped data";
     return $return;
}
?>

4 个答案:

答案 0 :(得分:1)

返回停止执行功能。你可以试试像

这样的东西
function getNews(){
    $html = null;
    //query stuff
    while($row = mysql_fetch_array($result)){
         $return = "Looped data";
         $html .= $return;
    }
    return $html;
}

答案 1 :(得分:1)

返回应该在循环中使用

尝试此功能

<?php function getNews()
{
   $return =array()
   while($row = mysql_fetch_array($result))
   {
     $return[] = "Looped data";

   }
   return $return;
}
?>

答案 2 :(得分:0)

第一个return函数中断,因此只获取第一行。您可以暂时将数据保存在数组中并将其返回。 echo时,function getNews(){ //query stuff $result = array(); while($row = mysql_fetch_array($result)){ $result[] = "looped data"; } return $result; } echo implode("<br>\n", getNews()); 可以implode()

{{1}}

获取返回的数组将来会更有用。在我看来,函数名称更具描述性。它没有说concat / etc,只能得到。

答案 3 :(得分:0)

每个循环都不能使用函数返回。或者,您可以将循环中创建的结果保存到变量或数组中,并返回变量/数组。使用变量的示例是:

<?php function getNews() {
    //query stuff
    $return = "";
    while($row = mysql_fetch_array($result)) {
        $return .= "Looped data";    
    }
    return $return;
}
?> 

如果您的目的只是echo结果而不是函数本身而不使用变量。如果你想用结果处理某些东西,数组会更好。