Победите нулевые значения в коллекциях Laravel. Освойте метод фильтрации и устраняйте нули с легкостью и элегантностью.
Нулевые значения могут засорять ваши коллекции Laravel и затруднять обработку данных. Узнайте, как эффективно удалять нулевые значения из ваших коллекций, повышая целостность данных и упрощая процесс разработки Laravel.
Иногда вы можете получить коллекцию, содержащую null значения.
Удалить эти null значения из коллекции можно очень легко с помощью метода .filter
Когда вы посмотрите исходный код метода filter в классе Illuminate\Support\Collection, вы увидите, что $callback является необязательным параметром:
public function filter(callable $callback = null)
{
if ($callback) {
return new static(Arr::where($this->items, $callback));
}
return new static(array_filter($this->items));
}
Если обратный вызов не указан, array_filter будет выполнен, также без обратного вызова.
Руководство PHP гласит, что:
Если обратный вызов не указан, все пустые записи массива будут удалены.
Значения false или null считаются пустыми. Это означает, что вы можете просто вызвать filter без аргументов:
$collection = collect([1, 2, null, 4, null, null, 7]);
$collection->filter();
// [1, 2, 4, 7]
Все значения null будут удалены из коллекции.