Php 当Json数据在laravel上种子时尝试获取非对象的属性

Php 当Json数据在laravel上种子时尝试获取非对象的属性,php,json,laravel,Php,Json,Laravel,我想在laravel中使用seeder来播种json数据。当我使用php artisan migrate--seed命令进行迁移和种子设定时,命令行中将出现以下消息 In PaymentTableSeeder.php line 19: Trying to get property 'identity' of non-object 支付网关.json [ { "identity":"Stripe", "config":{ "P

我想在laravel中使用seeder来播种json数据。当我使用
php artisan migrate--seed
命令进行迁移和种子设定时,命令行中将出现以下消息

In PaymentTableSeeder.php line 19:

  Trying to get property 'identity' of non-object 
支付网关.json

 [  
   {  
      "identity":"Stripe",
      "config":{  
         "Publishable key":"",
         "Secret key":""
      },
      "status":0
   }
]
PaymentTableSeeder

<?php

use Illuminate\Database\Seeder;

class PaymentTableSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        $json = File::get('database/data/payment-gateway.json');
        $data = json_decode($json, true);

        foreach($data as $obj){
            DB::table('payment_settings')->insert([
                'identity' => $obj->identity,
                'config' => $obj->config,
                'status' => $obj->status
            ]);
        }

    }
}

第二个参数表示以assoc数组的形式获得结果。删除参数或通过访问数据

$obj['identity']
请参阅文档

第二个参数表示以assoc数组的形式获得结果。删除参数或通过访问数据

$obj['identity']

请参阅文档。

在Connection.php第664行:数组到字符串的转换(SQL:插入到
支付设置中
标识
配置
状态
)值(条带,0))在MySqlConnection.php第80行:数组到字符串的转换中,会弹出错误,因为“config”键是一个包含两个元素“Publishable key”和“Secret key”的数组。Imho此数据应转到另一个配置表,并且可以将id作为外键保存到您的支付设置配置字段中。我想将json数据{“Publishable key”:“”“Secret key”:“”}存储在配置字段'config'=>json编码($obj['config'])中php第664行:数组到字符串的转换(SQL:insert into
payment\u settings
identity
config
status
)值(Stripe,0))在MySqlConnection.php第80行:数组到字符串的转换出现错误,因为“config”键是一个包含两个元素“Publishable key”和“Secret key”的数组.Imho此数据应转到另一个配置表,并且可以将id作为外键保存到您的支付设置配置字段中。我想在配置字段'config'=>json编码($obj['config'])中的json数据上存储{“Publishable key”:“,”Secret key:“}”您当时可能想做什么?您是否尝试打印出
$obj
以查看正在评估的内容?您是否尝试打印出
$obj
以查看正在评估的内容?