Есть плагин, который выводит цену в формате: базовая цена - %скидки = цена со скидкой. Очень часто цена выводится с копейками, т.е. 254.04, 340.98, 5401.69. Как округлить целую часть, убрать копейки? Заранее спасибо за помощь.
elseif (!empty($page_data['page_price_discount']) AND $page_data['page_price_discount']>0 AND empty($page_data['page_price_BYR_discount']))
{
$temp_array['PRICE_BYR_DISCOUNT']
= round($page_data['page_price_BYR'] - ($page_data['page_price_BYR'] * $page_data['page_price_discount'] / 100), 2);
}
elseif (!empty($page_data['page_price_discount']) AND !empty($page_data['page_price_BYR_discount']))
{
switch ($cfg['plugin']['currency']['discount'])
{
case 'percent':
$temp_array['PRICE_BYR_DISCOUNT']
= round($page_data['page_price_BYR'] - ($page_data['page_price_BYR'] * $page_data['page_price_discount']
/ 100), 2);
break;
case 'price':
$temp_array['PRICE_DISCOUNT']
= 100 - round($page_data['page_price_BYR_discount'] / $page_data['page_price_BYR'] * 100, 0);
break;
default:
break;
}
}
case 'percent':
$temp_array['PRICE_BYR_DISCOUNT']
= round($page_data['page_price_BYR'] - ($page_data['page_price_BYR'] * $page_data['page_price_discount']
/ 100), 2);
break;
Видите этот участок кода? Условие "percent" он выводит Вам решение с копейками. И в этом участке код тоже самое:
$temp_array['PRICE_BYR_DISCOUNT']
= round($page_data['page_price_BYR'] - ($page_data['page_price_BYR'] * $page_data['page_price_discount'] / 100), 2);
Потому что round() задан с аргументом вывода десятичных.
, 2);
Замените эту двойку на ноль, и десятичные пропадут. Результат замены:
elseif (!empty($page_data['page_price_discount']) AND $page_data['page_price_discount']>0 AND empty($page_data['page_price_BYR_discount']))
{
$temp_array['PRICE_BYR_DISCOUNT']
= round($page_data['page_price_BYR'] - ($page_data['page_price_BYR'] * $page_data['page_price_discount'] / 100), 0);
}
elseif (!empty($page_data['page_price_discount']) AND !empty($page_data['page_price_BYR_discount']))
{
switch ($cfg['plugin']['currency']['discount'])
{
case 'percent':
$temp_array['PRICE_BYR_DISCOUNT']
= round($page_data['page_price_BYR'] - ($page_data['page_price_BYR'] * $page_data['page_price_discount']
/ 100), 0);
break;
case 'price':
$temp_array['PRICE_DISCOUNT']
= 100 - round($page_data['page_price_BYR_discount'] / $page_data['page_price_BYR'] * 100, 0);
break;
default:
break;
}
}
Подробное описание функции round() можно изучить по этой ссылке.
Творческих успехов Вам.
echo floor(340.98);
Результат: 340
Я туповат. Решение простейшее Подставил round перед ($page_data['page_price_BYR'] * $page_data['page_price_discount'] / 100)
{
$temp_array['PRICE_BYR_DISCOUNT']
= round($page_data['page_price_BYR'] - round($page_data['page_price_BYR'] * $page_data['page_price_discount'] / 100), 2);
}
Продвижение своими сайтами как стратегия роста и независимости