[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Добавить в строку значение.
gromitsu
У меня есть переменная $a = 12345678;
Мне нужно сначала число превратить в строку, а потом после каждого третьей цифры добавить запятую.
В итоге все должно получиться $b = "123,456,78";
Спасибо.
FatCat
Превратить в строку легко:
$a .= "";

Запятые проще добавлять в цикле.
Сначала создадим пустую переменную:
$b = "";

Запускаем цикл с шагом в 1 символ по длинне строки:
for($i=0;$i<strlen($a);$i++)
{

"Перетаскиваем посимвольно цифирки:
$b .= substr($a,$i,1);

После каждой третьей цифры добавляем запятую:
    $k = ($i+1)%3;
if(!$k)$b .= ",";
}


_____________
Бесплатному сыру в дырки не заглядывают...
DedMorozzz
А разве не проще ли будет сделать сначала запятые, через намбер формат, а после в строку?

_____________
Если не говорить пользователям, что Linux это "Сложно и страшно", то им совершенно всё равно, в чём не разбираться
gromitsu
DedMorozzz Это как?
FatCat
выводит 123,456,789, (с запятой в конце)

немного модифицировал ))

<?php

$a = 123456789;
$b = "";
for($i=0;$i<strlen($a);$i++){
$b .= substr($a,$i,1);
$k = ($i+1)%3;
if($i != strlen($a)-1){
if(!$k){$b .= ",";}
}
}

echo $b;

?>



Спасибо
DedMorozzz
echo $aaa= number_format(123456789);//123,456,789
Например так

_____________
Если не говорить пользователям, что Linux это "Сложно и страшно", то им совершенно всё равно, в чём не разбираться
FatCat
Цитата (gromitsu @ 11.05.2010 - 17:02)
if($i != strlen($a)-1){
    if(!$k){$b .= ",";}
}

Гы!
if($i < strlen($a) and !$k)$b .= ",";


_____________
Бесплатному сыру в дырки не заглядывают...
FatCat
DedMorozzz
На другой локали может быть через точку.
И если будет не 9 цифр, а 10 - где встанут запятые?

_____________
Бесплатному сыру в дырки не заглядывают...
jetistyum
$int = 12345678900;
$str = implode(',', str_split($int, 3));
echo $str;

почему не так?
FatCat
Цитата (jetistyum @ 11.05.2010 - 17:39)
почему не так?

Потому что банально не знал про str_split biggrin.gif

_____________
Бесплатному сыру в дырки не заглядывают...
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.