LARAVEL 5.5 VE YUKARI
@Php blade yönergesi artık satır içi etiketleri kabul etmiyor. Bunun yerine, direktifin tam biçimini kullanın:
@php
$i = 1
@endphp
LARAVEL 5.2 VE YUKARI
Sadece şunu kullanabilirsiniz:
@php ($i = 1)
Veya bir blok ifadesinde kullanabilirsiniz:
@php
$i = 1
@endphp
LARAVEL 5
Blade'i şu şekilde uzatın:
/*
|--------------------------------------------------------------------------
| Extend blade so we can define a variable
| <code>
| @define $variable = "whatever"
| </code>
|--------------------------------------------------------------------------
*/
\Blade::extend(function($value) {
return preg_replace('/\@define(.+)/', '<?php ${1}; ?>', $value);
});
Ardından aşağıdakilerden birini yapın:
Hızlı çözüm: Tembelseniz, kodu AppServiceProvider.php dosyasının boot () işlevine koyun.
Güzel çözüm: Kendi servis sağlayıcınızı oluşturun. Laravel 5'te bıçağın nasıl uzatılacağına ilişkin https://stackoverflow.com/a/28641054/2169147 adresine bakın. Bu şekilde biraz daha fazla iş var, ancak Sağlayıcıların nasıl kullanılacağı konusunda iyi bir egzersiz :)
LARAVEL 4
Yukarıdaki kodu app / start / global.php (ya da daha iyi olduğunu düşünüyorsanız başka bir yere) altına koyabilirsiniz .
Yukarıdaki değişikliklerden sonra şunları kullanabilirsiniz:
@define $i = 1
değişken tanımlamak.