PHP и с чем его едят....

Тагрим

Поняшка
Код:
есть поле ввода для циферок
   если не введена точка(запятая) ,то
   чилсо + 00, елсе
   число (без знаков)
например: ввожу 123
на выходе получаю 12300
например: ввожу 123,32
на выходе получаю 12332
варианты?
строковые переменные
 

Cris

Member
Код:
есть поле ввода для циферок
   если не введена точка(запятая) ,то
   чилсо + 00, елсе
   число (без знаков)
например: ввожу 123
на выходе получаю 12300
например: ввожу 123,32
на выходе получаю 12332
варианты?
PHP:
function num($string)
{
 for($i=0;$i<strlen($string);$i++)
 {
   if($string[$i]==',' || $string[$i]=='.') return substr($string,0,$i).substr($string,$i+1);
 }
 return $string."00";
}
 

PainKiller

Пастафарианец
Команда форуму
Супер Модератор
Все-равно форма для ввода циферок вернет строку, потому можно так.
PHP:
function replaceNow($v){
if($a=preg_match('/[,\.]/',$v)){
		return preg_replace('/[,\.]/','',$v);
	}
	else{
		return $v.'00';
	}
}
Да и вообще, работать будет и с числами. Только что даже проверил+)
 

Del

Member
Del, а если три знака после запятой епик фейл, а так да проще -)
+1 я тож сразу об этом подумал :)
почему фейл, будет число с десятыми, которые можно убрать/округлить и т.п. но этого не было в задании.

в таком же духе можно предположить, что числа могут быть написаны прописью. тогда точно полный "епик фейл".

вообще, какой вопрос, такой и ответ.
 

Del

Member
Все-равно форма для ввода циферок вернет строку, потому можно так.
PHP:
function replaceNow($v){
if($a=preg_match('/[,\.]/',$v)){
		return preg_replace('/[,\.]/','',$v);
	}
	else{
		return $v.'00';
	}
}
Да и вообще, работать будет и с числами. Только что даже проверил+)
У меня была мысль типа:
PHP:
function num($s) {
	if (preg_match("/[.,]/", $s) == 0)
		return $s."00";
	return str_replace(array(".",","), "", $s);
}
Но вообще задание странное.
 
Зверху