Archive for марта 3, 2009

Функция разделения чисел по разрядам

Для удобного чтения числа лучше делить по разрядам, т.е. из 1000 сделать 1 000, 1000000 = 1 000 000 и т.д.
В PHP уже есть такая функция

  1. number_format($params, , ‘.’, ‘ ‘)

В ней существует непрятная особенность: она не принимает больше 1-го символа в качестве разделителей. Ловкость рук и числа выходят с  

  1. function print_price($params) {
  2. return str_replace(‘ ‘, ‘ ’, number_format($params, , ‘.’, ‘ ‘));
  3. }

Чтобы использовать эту функцию в популярном шаблонизаторе smarty, просто прописываем в доступном месте:

  1. $tpl->register_modifier(“print_price”, “print_price”);

Теперь можем писать {$number|print_price} прям в шаблоне.
PROFIT!

, , , ,

Один комментарий

Функция правильных числовых окончаний

Иногда маленькая, но хорошая вещь доставляет огромное удовольствие.
Функция, которая ставит числовые окончания слова в нужной форме:

  1. function itemWords($col = 0) {
  2. $last = (int)substr($col, -1);
  3. if($last == ‘0′ || ($last > ‘4′ && $last <= ‘9′)) {
  4. $return = ‘товаров’;
  5. }elseif($last == ‘1′){
  6. $return = ‘товар’;
  7. }else{
  8. $return = ‘товара’;
  9. }
  10. return $return;
  11. }
  12. //Проверяем
  13. echo ‘2′, itemWords(2); //2 товара
  14. echo ‘1′, itemWords(1); //1 товар
  15. echo ‘102′, itemWords(102); //102 товара
  16. echo ‘38′, itemWords(38); //38 товаров
  17.  

enjoy!

,

Комментариев нет