У класі Fluent тепер з'явилися методи isEmpty() та isNotEmpty(), які дозволяють перевіряти, чи містить екземпляр дані
Раніше для перевірки наявності даних у екземплярі Fluent доводилося використовувати непрямі методи:
use Illuminate\Support\Fluent;
$fluent = new Fluent(['name' => 'Laravel News']);
if (count($fluent->toArray()) > 0) {
// Має вміст
}
if (isset($fluent->name) || isset($fluent->url)) {
// Має певний вміст
}
Нові методи забезпечують прямі булеві перевірки:
$populated = new Fluent(['name' => 'Laravel News', 'url' => 'https://laravel-news.com']);
$empty = new Fluent();
$populated->isEmpty(); // false
$populated->isNotEmpty(); // true
$empty->isEmpty(); // true
$empty->isNotEmpty(); // false
Обробка конфігурацій демонструє практичне застосування:
use Illuminate\Support\Fluent;
class ConfigurationProcessor
{
public function processSection(Fluent $config)
{
if ($config->isEmpty()) {
return $this->getDefaultConfiguration();
}
return $this->buildConfigurationArray($config);
}
public function mergeConfigurations(array $sections)
{
$merged = new Fluent();
foreach ($sections as $section) {
if ($section->isNotEmpty()) {
$merged = $merged->merge($section->toArray());
}
}
return $merged->isNotEmpty() ? $merged : $this->getDefaultConfiguration();
}
}
Ці методи можуть використовуватися в умовній логіці без перетворення в масив:
if ($configData->isNotEmpty()) {
$this->processConfiguration($configData);
} else {
$this->loadDefaultConfiguration();
}
Завдяки цим методам відпадає необхідність перетворювати екземпляри Fluent на масиви або перевіряти окремі властивості, просто щоб з'ясувати, чи містить екземпляр будь-які дані
Laravel пропонує зручні методи для роботи з датами, які значно спрощують запити до бази даних. Досліджуйте, як ці інтуїтивно зрозумілі функції допомагають створювати чіткі та зрозумілі умови для роботи з часовими даними!
Досліджуйте новий пакет Data Model для PHP, який спрощує процес гідратації об'єктів без зайвих складнощів! Дізнайтеся, як впровадження типобезпечних об'єктів може революціонізувати ваш підхід до розробки, читаючи нашу статтю
Нова версія Livewire 4, представленої Келебом Порзіо на Laracon US 2025, обіцяє значні покращення у швидкості та організації компонентів. Які з інноваційних функцій підкорять ваше серце? Читайте далі, щоб дізнатися більше про те, як Livewire 4 полегшить вашу роботу