我想在函数中使用 foreach 循环回显数组的所有值


I want to echo all the values of the arrays using foreach loop within a function

我试图在名为 country() 的函数中使用 foreach 循环回显$sel_arrays的所有值。我在 country() 函数中使用循环并返回值 $sel .但它确实只输出单个值孟加拉国。我想获取$sel_arrays的所有值。虽然我知道foreach循环迭代所有数组值,但是这些代码并没有给出我预期的结果。在我的代码下面...

    <?php 
    function country() {
        $sel_arrays = array('Banglasesh','Pakistan','USA','India','Italy');
        foreach( $sel_arrays as $sel ) {
            return $sel;
        }
    }
    echo country(); // output only Bangladesh. That i ain't wanting.
    ?>

我不明白它是怎么发生的。请帮助获取数组的所有值。

您的函数在第一次迭代中returns,然后退出该函数。这就是return的工作方式。若要解决此问题,可以将所有值添加到字符串中,并改为回显该字符串。

function country() {
    $sel_arrays = array('Banglasesh','Pakistan','USA','India','Italy');
    $result = "";
    foreach( $sel_arrays as $sel ) {
        $result .= $sel." ";
    }
    return $result;
}
echo country(); // outputs everything, separated by a space

参考

  • http://php.net/manual/en/function.return.php
function country() {
    $sel_arrays = array('Banglasesh','Pakistan','USA','India','Italy');
    foreach( $sel_arrays as $sel ) {
        echo $sel;
    }
}
country(); // output only Bangladesh. That i ain't wanting.