Держите лидерство 0 в Twig
В моей базе данных у меня есть поле, содержащее следующие данные: 000010 (тип integer)
В моей ветке tpl я хочу отобразить ее, затем я: {{расходы .documentName}}
Но браузер отображает "10". Как будто Twig автоматически выполнил обрезку моих данных.
Я пробовал {{resources.documentName | raw}}, но он не работает. Я не нахожу ничего в Google о том, как вести ведущий 0 с Twig.
Кто-нибудь знает, как действовать?
Ответы
Ответ 1
Я думаю, вы должны принудительно форматировать формат (поскольку ваш тип является целым числом).
Вы можете использовать фильтр формата:
{{ "%06d"|format(spending.documentName) }}
Или лучше создать расширение ветки (http://symfony.com/doc/current/cookbook/templating/twig_extension.html):
public function strpad($number, $pad_length, $pad_string) {
return str_pad($number, $pad_length, $pad_string, STR_PAD_LEFT);
}
В вашем шаблоне более ясное:
{{ spending.documentName | strpad(6,'0') }}
Ответ 2
Вы пытались использовать фильтр format?
Как placeholders follows the sprintf notation
вы должны иметь возможность конвертировать
sprintf('%06d', $integer);
в php
to {{ '%06d'|format($integer) }}
в ветке.
Ответ 3
для сохранения 0 на номер, вы можете просто {{ spending.documentName|capitalize }}