Laravel 8 data_set() {#collection-method}

2021-07-19 10:19 更新

data_set 函數(shù)使用「.」符號給多維數(shù)組或?qū)ο筚x值:

$data = ['products' => ['desk' => ['price' => 100]]];

data_set($data, 'products.desk.price', 200);

// ['products' => ['desk' => ['price' => 200]]] 

這個函數(shù)也支持使用「*」作為通配符給相應(yīng)鍵名賦值:

$data = [
    'products' => [
        ['name' => 'Desk 1', 'price' => 100],
        ['name' => 'Desk 2', 'price' => 150],
    ],
];

data_set($data, 'products.*.price', 200);

/*
    [
        'products' => [
            ['name' => 'Desk 1', 'price' => 200],
            ['name' => 'Desk 2', 'price' => 200],
        ],
    ]
*/ 

通常情況下,已存在的值將會被覆蓋。如果只是希望設(shè)置一個目前不存在的值,你可以增加一個 false 作為函數(shù)的第四個參數(shù):

$data = ['products' => ['desk' => ['price' => 100]]];

data_set($data, 'products.desk.price', 200, false);

// ['products' => ['desk' => ['price' => 100]]] 
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號