【问题标题】:Looping through database with array and save data into variable Laravel使用数组循环遍历数据库并将数据保存到变量 Laravel
【发布时间】:2018-01-31 10:03:11
【问题描述】:

我有一个存储车辆模型的数组。而且我有一个兼容所有车辆的数据库表。

我需要通过数据库表找到数组中的所有车辆。 实际上我做到了,我可以用数组遍历数据库并获取有关车辆的所有必要信息。但我的问题是我无法将数据保存到变量中。由于某种原因,它是空的。

但如果我只是想用回显功能显示数据,我实际上可以这样做。

这是我的代码:

$listing = str_replace( ", ", ",", $model );
        
        $modle_arrs = explode(',', $listing);

        foreach($modle_arrs as $modle_arr){
            
            $e_compts = EbayCompatrbilityCategorie::all()->where('model', $modle_arr);
            
            $compt_val = "{";
                foreach ($e_compts as $e_compt) {
                    $compt_val .= "[" . $e_compt['year'] . "]";
                    $compt_val .= "[" . $e_compt['model'] . "]";
                    
                    echo "[" . $e_compt['year'] . "]";
                    echo "[" . $e_compt['model'] . "]";
                }
            $compt_val .= "}";

        }

        dd($compt_val);

这是浏览器中的输出:

在这种情况下如何将数据存储到变量中?

【问题讨论】:

  • $compt_val 应该采用什么格式?
  • 应该是字符串。
  • 是否有可能在最后一次迭代中查询返回为空?您在每次迭代时都会覆盖 $compt_val,因此如果最后一个查询为空,您将得到一个空字符串。

标签: php mysql arrays laravel


【解决方案1】:

您在每次迭代时都会覆盖$compt_val。如果查询在最后一次迭代中返回为空,$compt_val 将为空。尝试将所有值保存在一个数组中:

$listing = str_replace( ", ", ",", $model );

$modle_arrs = explode(',', $listing);
$compt_val_all = [];
foreach($modle_arrs as $modle_arr){

    $e_compts = EbayCompatrbilityCategorie::all()->where('model', $modle_arr);

    $compt_val = "{";
        foreach ($e_compts as $e_compt) {
            $compt_val .= "[" . $e_compt['year'] . "]";
            $compt_val .= "[" . $e_compt['model'] . "]";

            echo "[" . $e_compt['year'] . "]";
            echo "[" . $e_compt['model'] . "]";
        }
    $compt_val .= "}";
    $compt_val_all[] = $compt_val;
}

dd($compt_val_all);

【讨论】:

  • 太棒了!留意那些变量初始化内部的foreach,他们很容易错过!祝你好运。
  • 再次感谢您。是的,我完全忘记了覆盖。
猜你喜欢
  • 2019-05-13
  • 2016-01-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-08-19
  • 1970-01-01
相关资源
最近更新 更多