mysql - 在 Laravel 中将 JSON 对象保存到 MySQL 数据库中

标签 mysql arrays json laravel

我有以下 JSON。我是 JSON 和 Laravel 的新手。我想将每个数组对象(如 LineNumStationNameStopNum)保存到数据库中。任何帮助是极大的赞赏。我已经能够解析,但无法将它们保存到数据库中。

foreach ($jsonIterator as $key => $val) {
    if(is_array($val)) {
        echo "$key:\n <br />" ;

        $trainDetail->Route = "$key";

    } else {
        echo "$key => $val\n <br />";
        $trainDetail->StopNumber = "$key";
        $trainDetail->StationName  = "$val";
    }
}

Route 没有存储 LineNumStopNumb 没有存储正确的值。

这是我正在处理的 JSON。

{"LineNum1":[{"StopNumber":"MN218","StationName":"ABCD"}],"LineNum2":[{"StopNumber":"MN244","StationName":"XYZ"}],"LineNum3":[{"StopNumber":"MN220","StationName":"DEFCG"},{"StopNumber":"MN318","StationName":"QWERTY"}]}

非常感谢任何帮助。

问候,

最佳答案

一个普通的查询会返回这样的东西,

[{"ID":"1","Code":"ECX4236"},{"ID":"10","Code":"LWJ3154"},{"ID":"11","Code":"TTX4201"},{"ID":"12","Code":"TTY2545"},{"ID":"13","Code":"RRA2553"}]

如果你使用 Laravel 的查询格式。

$items = DB::table('Items')->where('isActive','=',1)->pluck('Code');

这将返回一个数组。

["ECX4236","LWJ3154","TTX4201","TTY2545","RRA2553"]

您可以使用 Laravel 轻松地将其输入数据库。这就是我所做的。

关于mysql - 在 Laravel 中将 JSON 对象保存到 MySQL 数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38444647/

相关文章:

php - 逻辑问题 - 一个大盒子里有多少/哪些小盒子 - PHP/MySQL

mysql - 内部加入 max 不工作

ios - 如何使用 NSMutableArray 填充 TableView

python - 在新维度中堆叠数组

javascript - Angular 是否提供任何方法来隔离服务层?

mysql - sql Match() 针对无法识别的情况

mysql - 应用自动增量时MySQL会重用已删除的ID吗

javascript - 在 AngularJS 的 Repeated 对象中重复一个对象或数组

javascript - 从 JSON 在单个 Highcharts 图中绘制多个系列

用于验证 key 是否存在的 JSON 模式 "oneOf"