如何将foreach的所有值放入PHP变量中?

如何将foreach的所有值放入PHP变量中?,php,Php,如何将foreach的所有值放入php变量中?它似乎只拾取最后一个变量。您在每次迭代中都会覆盖$var。使用如下所示的点,这将附加而不是覆盖。 $var.=$test['somekey']如何: foreach ($tests as $test) { $var = $test['somekey']; } echo $var; 您可以尝试: $data = array() ; foreach ($tests as $test) { $data[] = $test['somekey'];

如何将foreach的所有值放入php变量中?它似乎只拾取最后一个变量。

您在每次迭代中都会覆盖$var。使用如下所示的点,这将附加而不是覆盖。
$var.=$test['somekey']

如何:

foreach ($tests as $test) {
  $var = $test['somekey'];
}
echo $var;
您可以尝试:

$data = array() ;
foreach ($tests as $test) {
  $data[] = $test['somekey'];
}

echo implode(" ; ", $data) ;
它似乎只接收最后一个变量

这是因为
$var
是一个变量,而不是数组。您只是多次重写同一个变量:只剩下最后一个值

$var
转换为代码中的数组

$var = array_map(function ($v) {
    return $v['somekey'];
}, $tests);

echo implode(PHP_EOL, $var);
然后使用类似于
array\u push
的方法在数组中添加值

$var = new array();
最后,您可能需要打印出值
echo
不是打印阵列的理想方法。我建议使用或包含在
标记中

foreach ($tests as $test) {
  array_push($var, $test['somekey']);
}
echo ("<pre>");
var_dump($var);
echo ("</pre>");
echo(“”);
var_dump($var);
回声(“”);

你想要的答案取决于你想做什么。 如果需要阵列,请使用:

$var = array_column($tests, $test);
或者,如果您的PHP版本>=5.5.0,您可以使用:

$var = "";
foreach ($tests as $test) {
    $var .= $test['somekey'];
}
print_r($var);
如果需要字符串,请使用:

$var = 0;
foreach ($tests as $test) {
    $var += $test['somekey'];
}
print_r($var);  
如果您想要一个号码,请使用:


您也可以使用任意一个而不是
+=
来做任何您想做的事情

“进入”到底是怎么回事?将它们放入数组中<代码>数组\列
。确实不清楚。可能是内爆,也可能是你想要的。你能再解释一下吗?(或者只是“回声”出来看看是什么)是的。就这样。谢谢我已经忘记了你应该把答案标记为正确我如何做一个条件检查数组中的最后一项?你可以得到数组的大小并与迭代计数器进行比较<代码>$count=计数($tests)$i=0;foreach($tests as$test){$i++;if($i==$count){#last element}一个简单的答案救了我一天。谢谢!!太棒了,数组[]括号就是我需要的
$var = 0;
foreach ($tests as $test) {
    $var += $test['somekey'];
}
print_r($var);