Привет!
Подскажите как при формировании суммы прописью выводить сумму с заглавной буквы?
Пробовал так: {SumPropis|ucfirst field=$Summa_scheta}, но увы...
1
Как применить модификатор smarty или php функцию
Автор kok, 02 янв. 2011 18:30
Сообщений в теме: 4
#1
Отправлено 02 Январь 2011 - 18:30
*Свободный программер.
#2
Отправлено 10 Январь 2011 - 11:16
Итак, пока нашёл такое решение:
1. в Smarty.class.php изменил запись на public $allow_php_tag = true;
2. в Редактирование шаблона "Счёт_html" таблицы "Счета" ввел код:
Знаю, что решение кривое, лезть в Smarty.class.php - неправильно.
Кто скажет как правильно?
ps: в php д.б. подключена mbstring.
1. в Smarty.class.php изменил запись на public $allow_php_tag = true;
2. в Редактирование шаблона "Счёт_html" таблицы "Счета" ввел код:
{php} $new_var = $smarty->getTemplateVars('Summa_scheta'); $string = num2str($new_var); $string = mb_ereg_replace("^[\ ]+","", $string); $string = preg_replace( '/^(\S)(.*)$/eu', "mb_strtoupper('\\1', 'UTF-8').mb_strtolower('\\2', 'UTF-8')", $string ); $smarty->assign('Summa_propis', $string); {/php}3. Далее в нужном месте шаблона просто дописал так: {$Summa_propis}
Знаю, что решение кривое, лезть в Smarty.class.php - неправильно.
Кто скажет как правильно?
ps: в php д.б. подключена mbstring.
*Свободный программер.
#3
Отправлено 10 Январь 2011 - 11:17
Все проще: {SumPropis field=$Summa_scheta caps=1}
SumPropis - добавленная нами функциия, все параметры можно увидеть в ее описании в файлах include/smarty_function.php и include/propis.php
SumPropis - добавленная нами функциия, все параметры можно увидеть в ее описании в файлах include/smarty_function.php и include/propis.php
#4
Отправлено 10 Январь 2011 - 11:23
Правда есть один нюанс - параметр caps доступен только с версии 1.9.0 (если не ошибаюсь)
#5
Отправлено 11 Январь 2011 - 19:33
Спасибо, работает!
*Свободный программер.
Количество пользователей, читающих эту тему: 2
0 пользователей, 2 гостей, 0 анонимных