СообЧа > База Знаний > Интернет > Веб-строительство > PHP

Вопрос

Я пишу скрипт, обрабатывающий данные такого формата, например: «2 489.00» или — «48 985 362.00» .
Т.е. в качестве разделителя между тысячами, миллионами и т.п. выступает пробел. Как его убрать? Вопрос обусловлен тем, что эти цифры надо потом просуммировать, а способы преобразования в int или float дают только то, что идет перед пробелом (в примерах это — «2» и «48», вместо желаемого.

И еще вопрос, который вам, наверное, уже надоел: я «гоняю» скрипты на рабочей станции. У нас стоит обычная сетка Windows. Возможен ли просмотр PHP страниц на других станциях рабочей группы?

Ответ

Дело в том, что PHP рассматривает переменные по контексту и автоматом приводит к соответствующему типу. Т.е. вы можете спокойно применять строковые функции к числам — они будут рассматриваться как строковое представление числа.

В Вашем случае:

$a="43 251 300.25";
$b="251 300";
$a=str_replace(" ","",$a);//Просто удаляем пробелы
$b=str_replace(" ","",$b);// Если они потом понадобятся, number_format() Вам поможет
$c=$a+$b;
echo "Сумма а и б = $c\r\n<br>";

Из конференции Expert_FAQ



Copyright © 2000-2004 Сообщество Чайников
Контактная информация