gpt4 book ai didi

php - 如何在 Laravel 中存储关联数组

转载 作者:行者123 更新时间:2023-12-05 02:55:22 24 4
gpt4 key购买 nike

我是 Laravel 的新手,我想将这个数组存储在数据库中。

这是我的数组的 php 代码:

$socialNetwork = array();
$socialNetwork[0]["name"]= "Facebook";
$socialNetwork[0]["account"]= "facebook_account";
$socialNetwork[1]["name"]= "Twitter";
$socialNetwork[1]["account"]= "twitter_account";
$socialNetwork[2]["name"]= "Instagram";
$socialNetwork[2]["account"]= "insta_account";

var_dump() 看起来像这样:

array(3) {
[0] => array(2) {
["name"] => string(8) "Facebook"
["account"] => string(16) "facebook_account"
}
[1] => array(2) {
["name"] => string(7) "Twitter"
["account"] => string(15) "twitter_account"
}
[2] => array(2) {
["name"] => string(9) "Instagram"
["account"] => string(13) "insta_account"
}
}

我已经尝试了几种方法,但我无法让它工作!

请帮忙写代码。表名是socialAccounts

最佳答案

在您的数据库中为该字段添加一列; JSON 或 TEXT 类型将完成这项工作。

接下来,您应该将列添加到 SocialAccount 模型的 $casts 数组中:

protected $casts = [
'facebook_account' => 'array',
];

现在,无论何时检索此值,它都会为您反序列化。

要存储值,只需使用json_encode():

$social_account->facebook_account = json_encode($facebookArrayData);
$social_account->save();

您可以在文档中阅读更多关于属性转换的信息; https://laravel.com/docs/7.x/eloquent-mutators#attribute-casting

关于php - 如何在 Laravel 中存储关联数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61311936/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com