Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Отнять 10%
 
 автор: Елена Смирнова   (23.03.2009 в 15:31)   письмо автору
 
 

Есть переменная
$text='12.54';
как отнять 10% и вывести?

  Ответить  
 
 автор: Trianon   (23.03.2009 в 15:33)   письмо автору
 
   для: Елена Смирнова   (23.03.2009 в 15:31)
 

$pct = 10;
$text='12.54';
$res = $text * ( 1 - $pct / 100 );
echo $res;

  Ответить  
 
 автор: Елена Смирнова   (23.03.2009 в 15:43)   письмо автору
 
   для: Trianon   (23.03.2009 в 15:33)
 

А еще проще можно? =)
и как оставить только 2 знака после запятой?

  Ответить  
 
 автор: Trianon   (23.03.2009 в 15:56)   письмо автору
 
   для: Елена Смирнова   (23.03.2009 в 15:43)
 

куда проще-то?
echo sprintf("%.2f", $res);

  Ответить  
 
 автор: Елена Смирнова   (23.03.2009 в 16:00)   письмо автору
 
   для: Trianon   (23.03.2009 в 15:56)
 

А чем ваш код отличается например от этого?

<?php 
$res
round($res2); 
?> 

  Ответить  
 
 автор: Trianon   (23.03.2009 в 16:10)   письмо автору
 
   для: Елена Смирнова   (23.03.2009 в 16:00)
 

а проверить?

например, тем, что мой дает ровно два знака, а Ваш может и меньше дать.
например, тем, что Ваш в переменную заносит, а мой печатает.
например, тем, что результат Вашего - float , а моего - string

  Ответить  
 
 автор: Лена   (23.03.2009 в 17:03)   письмо автору
 
   для: Trianon   (23.03.2009 в 16:10)
 

>например, тем, что мой дает ровно два знака, а Ваш может и меньше дать.

Как он может меньше дать, если указана точная цифра, сколько знаков округлять?

  Ответить  
 
 автор: Trianon   (23.03.2009 в 17:38)   письмо автору
 
   для: Лена   (23.03.2009 в 17:03)
 

Результат выдается в формате float, то есть с полной 15-разрядной точностью. И тем не менее видите Вы не более двух цифр. Тогда почему Вас удивляет, что если последняя цифра равна нулю, Вы увидите лишь одну цифру после точки?

for($a = 18.61; $a < 192; $a += 7.77)
{
  $d = round($a, 2);
  echo $d,'<br>';
}

  Ответить  
 
 автор: Елена Смирнова   (23.03.2009 в 17:04)   письмо автору
 
   для: Trianon   (23.03.2009 в 16:10)
 

Убедительно! =)) Спасибо!

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования