PHP函数:从循环返回数据

PHP函数:从循环返回数据,php,arrays,function,loops,return,Php,Arrays,Function,Loops,Return,我想使用一个函数从我的数据库动态加载我网站上的新闻提要,我已经创建了一个函数,其中包含特定用户发布的帖子类型的变量等,我想运行一个while()循环,像通常一样返回每一篇帖子,但如何在一个函数中实现这一点?我试着运行循环并设置我想在单个变量中显示的内容,然后它在循环中返回,我希望它每次在循环中运行一个返回,函数会一个接一个地返回,当我从逻辑上考虑时,这显然不会发生,那么,有人能解释一下这是如何实现的吗 示例(类似)代码: 访问函数: <?php echo getNews(); ?>

我想使用一个函数从我的数据库动态加载我网站上的新闻提要,我已经创建了一个函数,其中包含特定用户发布的帖子类型的变量等,我想运行一个while()循环,像通常一样返回每一篇帖子,但如何在一个函数中实现这一点?我试着运行循环并设置我想在单个变量中显示的内容,然后它在循环中返回,我希望它每次在循环中运行一个返回,函数会一个接一个地返回,当我从逻辑上考虑时,这显然不会发生,那么,有人能解释一下这是如何实现的吗

示例(类似)代码:

访问函数:

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

功能:

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

返回停止函数的执行。你可以试试类似的东西

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

回路应在回路外侧使用

试试这个功能

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

   }
   return $return;
}
?>

使用第一个
返回
函数将中断,因此只提取第一行。您可以将数据临时保存在数组中并返回它。当
echo
ing时,您可以选择它

函数getNews(){ //查询资料 $result=array(); while($row=mysql\u fetch\u数组($result)){ $result[]=“循环数据”; } 返回$result; } echo内爆(“
\n”,getNews());
获取返回的数组在将来可能更有用。在我看来,函数名更具描述性。它没有说concat/etc,只有get。

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

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

如果您的目的只是
回显
结果,则不使用变量而在函数本身中执行。如果你想处理一些有结果的东西,数组会更好