Laravel zawiera nową funkcję data_forget
narzędziową, która pozwala usunąć klucze z tablicy lub obiektu za pomocą notacji "kropki" i zostanie dołączona w następnym wydaniu.
Rzućmy okiem na działanie data_forget
pomocnika:
$data = [
'people' => [
'john' => ['address' => '123 main', 'state' => 'nc'],
'michael' => ['address' => '34 east 5th', 'state' => 'ny']
]
];
data_forget($data, 'people.*.address');
Funkcja data_forget
usuwa atrybut "address" zarówno z tablicy podrzędnej "john", jak i "jane". Rezultatem będzie:
[
'people' => [
'john' => ['state' => 'nc'],
'michael' => ['state' => 'ny']
]
];
Jedną z fajnych cech pomocnika data_forget
jest jego elastyczność. Obsługuje symbole wieloznaczne i pełną notację "kropki".
Na przykład w powyższym przykładzie symbol wieloznaczny (*) jest używany w ciągu klucza, określając dowolny podklucz pod "name". Alternatywnie, jeśli chcesz usunąć klucz z określonej tablicy podrzędnej, możesz to zrobić za pomocą pełnej notacji "kropki", na przykład tak:
data_forget($data, 'people.john.address');
Aby dowiedzieć się więcej o funkcji pomocniczej data_forget
, możesz odwołać się do PR na Github.