Cần loại bỏ các khóa từ một mảng hoặc đối tượng? Sử dụng trợ giúp của hàm “forget” trong dữ liệu.
Laravel bao gồm một hàm tiện ích mới được gọi là “data_forget” cho phép bạn loại bỏ các khóa từ một mảng hoặc đối tượng bằng cách sử dụng ký hiệu “dot” (dấu chấm), và nó sẽ được bao gồm trong phiên bản tiếp theo.
Hãy xem cách hoạt động của trợ giúp “data_forget“:
$data = [
'people' => [
'john' => ['address' => '123 main', 'state' => 'nc'],
'michael' => ['address' => '34 east 5th', 'state' => 'ny']
]
];
data_forget($data, 'people.*.address');
Hàm `data_forget` loại bỏ thuộc tính ‘address’ từ cả mảng con “john” và “jane”. Kết quả sẽ như sau:
[
'people' => [
'john' => ['state' => 'nc'],
'michael' => ['state' => 'ny']
]
];
Một trong những tính năng tuyệt vời của trợ giúp `data_forget` là tính linh hoạt. Nó hỗ trợ các ký tự đại diện (wildcard) và ký hiệu ‘dot’ đầy đủ.
Ví dụ, trong ví dụ trên, ký tự đại diện (*) được sử dụng trong chuỗi khóa, chỉ định bất kỳ khóa con nào dưới ‘name’. Tuy nhiên, nếu bạn cần loại bỏ một khóa từ một mảng con cụ thể, bạn có thể làm như vậy bằng cách sử dụng ký hiệu ‘dot’ đầy đủ, như sau:
data_forget($data, 'people.john.address');
Để tìm hiểu thêm về hàm trợ giúp `data_forget`, bạn có thể tham khảo PR trên Github.