funkcje Volt działają jako zamienniki smyczkowych i nie faktycznie wywołaj podstawową funkcję. Volt tłumaczy funkcję na odpowiedni łańcuch, który w zamian jest interpretowany przez PHP.
Załóżmy, że masz Locale
klasę, która ma metodę translate
jako takie:
public static function translate()
{
$return = '';
if (isset(self::$_phrases[$key]))
{
$return = self::$_phrases[$key];
}
return $return;
}
Metoda ta wykorzystuje wewnętrzną tablicę $_phrases
aby znaleźć odpowiedni klucz, który przejechania i powrotu tekst frazę. Jeśli nie zostanie znaleziony, zwraca pusty ciąg.
Teraz musimy zarejestrować funkcję w woltach.
Zobacz, jak zarejestrowana jest funkcja tr
. Zwraca ciąg \My\Locale::translate({$key})
z podanym parametrem $key
. Ta składnia Volt będzie tłumaczona na dyrektywy PHP i wykonywana przez PHP. Zatem ciąg widok:
<div class='page-header'>
<h2>{{ tr('session_login_title') }}</h2>
</div>
po Volt przetwarza staje:
<div class='page-header'>
<h2><?php echo \My\Locale::translate('session_login_title') ?></h2>
</div>