bO_oblik
@bO_oblik

Парсинг цен на PHP?

Есть всевозможные варианты записи цен:


1000 рублей

1000,00 рублей

1000.00 руб


И всякие другие возможно, есть ли какие-нибудь готовые решения для их парсинга в float?
  • Вопрос задан
  • 3220 просмотров
Пригласить эксперта
Ответы на вопрос 4
@cat_crash
Да,
прям на официальном сайте PHP: www.php.net/manual/en/function.preg-match-all.php

Еще можно попробовать погуглить
Ответ написан
Комментировать
Agent_J
@Agent_J
$str = str_replace(' ', '', $string);
preg_match("#(\d+)(\.|,)?(\d+)?#", $str, $matches); // preg_match_all если много цен в одной строке
Ответ написан
mark_ablov
@mark_ablov
Zend_Number
пример:
$locale = new Zend_Locale('de_AT');
$number = Zend_Locale_Format::getNumber('13.524,678',
                                        array('locale' => $locale,
                                              'precision' => 3)
                                       );
 
print $number; // will return 13524.678
Ответ написан
Комментировать
Чуть-чуть не в тему, но нельзя работать с деньгами в float…
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы