【问题标题】:How to get all values from an array如何从数组中获取所有值
【发布时间】:2016-01-18 16:21:28
【问题描述】:

我有一个以数组格式检索和存储值的变量。那就是

$fold_location = Input::get('location');

如果我们打印这意味着它如下所示:

Array ( [0] => 1 [1] => 2 )

我想要的是从这个变量中获取所有值。

我正在尝试以下方法。

    foreach($fold_location as $value) {
                    $fold_location = $value;
                    print_r($fold_location);
    }

但它会将输出返回为 1。 我想获得所有的价值。如何在 php -mysql 中做到这一点

【问题讨论】:

  • 它已经在数组中了。你想怎么得到这个?
  • 首先这与MySQL无关,其次$fold_location已经包含了所有的值。所以我不知道你想用你的foreach() 实现什么,它用单个值覆盖数组。
  • 我只想获取值。例如 1 和 2 。但在上面的代码中只返回 1
  • 因为你在循环中覆盖了$fold_location
  • $fold_location[] = $value; 打印数组。

标签: php mysql laravel-4


【解决方案1】:

您可以使用 PHP 的 array_values() 函数获取数组值。你不需要做一个 foreach()

<?php
$array = array("size" => "XL", "color" => "gold");
print_r(array_values($array));
?>

以上代码的输出将是

Array
(
    [0] => XL
    [1] => gold
)

【讨论】:

  • 有什么区别?
  • 不同之处在于,我们得到了一个数组中的所有值。 OP 试图做的是他通过在 foreach 中运行来覆盖变量
  • 已经是Array ( [0] =&gt; 1 [1] =&gt; 2 )。如果应用 array_values 会返回什么?
  • 我想你没有理解他的问题。他想问什么,试着理解这个问题“但它返回输出为1”
  • 那是因为OP正在覆盖循环内的变量。
【解决方案2】:

您确实在循环中覆盖了您的数组。试试:

foreach($array as $item) print_r($item);

另见http://php.net/manual/en/control-structures.foreach.php

【讨论】:

    【解决方案3】:

    用下面的代码替换你的 foreach 循环。

    foreach($fold_location as $value) {
        echo $value;
    }
    

    【讨论】:

      猜你喜欢
      • 2017-08-11
      • 1970-01-01
      • 1970-01-01
      • 2021-06-02
      • 2021-03-01
      • 1970-01-01
      • 2017-01-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多