Intereting Posts
PHP MYSQL «INSERT INTO $ table VALUES …» переменное количество полей Mysql не может выполнять более одного запроса за раз Когда действие формы действует на ту же страницу, сохраните позицию страницы? Как перенаправить URL-адрес после определения некоторых переменных с помощью curl_init Как создать PDF-файл Почему вызов команды drush с помощью system () завершается с ошибкой? Принуждение префикса www к PHP / htaccess / mod_rewrite Как настроить Zend 2 на сервере хостинга? Поиск файлов в PDF-файлах и сравнение Расширение openssl требуется для защиты SSL / TLS Песочница APNS Ошибка подключения «0» в php-файле? Предупреждение: array_key_exists () ожидает, что параметр 2 будет массивом, boolean given Как определить угол съемки фотографии и автоматический поворот для отображения веб-сайта, например, на настольных приложениях? Счетчик просмотров страниц с помощью PHP и MySQL? Множественный узел клиента Php

PHP-формат денег с пробелами

Мне интересно, есть ли способ разделить тысячи с космическим характером.

Например:

$number = 21234.56; setlocale(LC_ALL, 'pl_PL.utf8'); echo money_format('%i', $number); 

дает мне:

  21,234,56 PLN 

И я хочу:

  21 234,56 PLN 

Я не хочу делать str_replace. Я уверен, что есть лучший способ.

    Related of "PHP-формат денег с пробелами"

    Вы можете использовать number-format . Например :

     echo number_format($number, 2, ',', ' '); 

    Но вам нужно будет поставить устройство самостоятельно.

    В противном случае этот комментарий на money_format документации money_format дает версию функции с некоторым кодом, который вы можете изменить, чтобы изменить разделитель тысяч.

    Вы также можете сделать что-то вроде этого:

     $locale = localeconv(); $text = money_format('%i', $number); $text = str_replace($locale['mon_thousands_sep'], ' ', $text); 

    см. http://php.net/manual/en/function.number-format.php

    string number_format ( float $number , int $decimals = 0 , string $dec_point = '.' , string $thousands_sep = ',' )

    Для вашего случая:

     number_format($number, 2, ',', ' ');