Отвечая на мой вопрос:
Я решил проблему, создав собственную директиву blade-сервера.
Создал пользовательского поставщика услуг, а затем определил мою собственную директиву blade-сервера следующим образом:
use Illuminate\Support\Facades\Blade;
class BladeServiceProvider extends ServiceProvider {
public function register() {
}
public function boot() {
Blade::directive('existsandsetto', function ($expression) {
list($var, $value) = explode(',', $expression);
$var = trim($var);
$value = trim($value);
return "<?php if(isset($var) && $var === $value) : ?>";
});
Blade::directive('endexistsandsetto', function ($expression) {
return '<?php endif; ?>';
});
}
}
Использование в шаблоне Blade:
@existsandsetto($foo, 'bar')
// $foo exists and is set to 'bar'
@endexistsandsetto
- Не забудьте зарегистрировать провайдера нестандартных услуг.