【问题标题】:I want to echo all the values of the arrays using foreach loop within a function我想在函数中使用 foreach 循环回显数组的所有值
【发布时间】:2016-02-06 13:00:02
【问题描述】:

我试图在名为country() 的函数中使用foreach 循环来回显$sel_arrays 的所有值。我在country() 函数中使用循环并返回值$sel。但它只输出单个值 Bangladesh。我想获取$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.
    ?>

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

【问题讨论】:

  • 代替return $sel;echo $sel;
  • 为什么要使用 foreach 循环,如果您需要获取 $sel_arrays.. 只需返回 $sel_arrays 变量并删除 foreach 循环..

标签: php function foreach


【解决方案1】:

您的函数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

参考

【讨论】:

    【解决方案2】:
    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.
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-18
      • 2016-06-06
      • 2018-04-05
      • 2021-01-22
      相关资源
      最近更新 更多