Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Как разбить вывод цены на целые и копейки?


Recommended Posts

Кстати да, тоже думал над этим вопросом, даже просто для стилизации.

Это в контроллере $price переводить в строку и "бить" на две строковые переменные по разделителю целого и дробного. Я думаю так сделать. Хотя, может есть более грамотная реализация.

Змінено користувачем chamaerops
Надіслати
Поділитися на інших сайтах


Кстати да, тоже думал над этим вопросом, даже просто для стилизации.

Это в контроллере $price переводить в строку и "бить" на две строковые переменные по разделителю целого и дробного. Я думаю так сделать. Хотя, может есть более грамотная реализация.

Посредством js можно, но двиг не разрешает, все равно через секунду после рендеринга страницы затирает приписанные копейкам теги и стили.

Надіслати
Поділитися на інших сайтах


<?php 
 $pattern = '/([\d,]+\.)(\d+)(.*)$/';
 $formatted = preg_replace($pattern, '$1<sup>$2</sup>$3', $price); 
 $parts = explode('.', $formatted); 
 echo "$parts[0] $parts[1]";
?>

Подобные вещи также не прокатывают. Так только контроллер править.

Надіслати
Поділитися на інших сайтах


Даже мысли не возникало использовать для этого js. Смысл?

Всего то нужно первичный источник пересенную $price в контроллере "разобрать" на две другие переменные и сделать вывод в .tpl

Задача, как по мне, весьма тривиальная. Просто а моем случае она не приоритетная (есть задачи важнее) и я ей займусь чуть позже. Хотя, если с PHP на "ты", то там работы на 5 минут.

Надіслати
Поділитися на інших сайтах


 Смысл?

Делать все в самой теме. Поставил - работает.

 

Хотя, я смотрю, движок сам изначально не рассчитан на такое, раз уж там в системных файлах ссылки на tpl из дефолтной темы.

Надіслати
Поділитися на інших сайтах


А нужно это для обертывания копеек в <sup> :-)

Зачем все так усложнять заходиш в файл 

system/library/currency.php и редачиш вывод под себя и оно сразу изменит вывод валюты по всему сайту

Надіслати
Поділитися на інших сайтах

  • 2 years later...
В 21.08.2016 в 13:16, konorws сказал:

Зачем все так усложнять заходиш в файл 

system/library/currency.php и редачиш вывод под себя и оно сразу изменит вывод валюты по всему сайту

вывод под себя - класс сказано.

 

А теперь по полочкам кому нужно.

system/library/currency.php ищем:

$string .= number_format(round($value, (int)$decimal_place), (int)$decimal_place, $decimal_point, $thousand_point);

комментируем и после него добавляем:

$prisenotdcm= number_format(round($value, (int)$decimal_place), (int)$decimal_place, $decimal_point, $thousand_point);    
$decimal = substr($prisenotdcm, -2);        

$string .= substr($prisenotdcm, 0, -2);
$string .= "<sup>".$decimal."</sup>";

Думаю комментировать уже нечего.

Пишем vqmod файлик и применяем когда нужно.

А вот и он

<modification>
	<id>split price</id>
	<version>0.1</version>
	<vqmver>1.0.4</vqmver>
	<author>Aleks Moroz</author>
        <file name="system/library/currency.php">
            <operation>
                <search position="replace"><![CDATA[$string .= number_format(round($value, (int)$decimal_place), (int)$decimal_place, $decimal_point, $thousand_point);]]>
                </search>
                <add><![CDATA[
                    $prisenotdcm= number_format(round($value, (int)$decimal_place), (int)$decimal_place, $decimal_point, $thousand_point);
        
                    $decimal = substr($prisenotdcm, -2);
                    
                    $string .= substr($prisenotdcm, 0, -2);
                    $string .= "<sup>".$decimal."</sup>";
                   
                   ]]>
                </add>
            </operation>
        </file>
</modification>

 

Змінено користувачем morroo
Надіслати
Поділитися на інших сайтах

http://demo2302.slasoft.kharkov.ua/

Есть несколько моментов, которые вы не учли, что в заказе вы отправляете текстовое собщение

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.