다음과 함께 (s) printf를 사용할 수 있습니다.
$number = sprintf('%+f', $number);
// "-0" => +0.000000
// "1.2" => +1.200000
또는
function formatPositive($number)
{
return ($number > 0) ? "+$number" : $number;
// "0" => "0"
// "-0" => "-0"
// "1.2" => "+1.2"
}
또는
function formatPositive($number)
{
switch(true) {
case !is_numeric($number): // "Beer" => "NaN"
$number = 'NaN';
break;
case $number == 0: // "-0" = "±0"
$number "±0";
break;
case $number > 0: // "1.23" => "+1.23"
$number = "+$number";
break;
default: // "-1.23" => "-1.23"
break;
}
return "$number";
}
-------------------$i = 3;
printf('%+d ', $i);
$i = -3;
printf('%+d ', $i);
인쇄 +3 -3
( 필요한 경우 sprintf () 와 함께 작동 )
sprintf("%+d", 5); # should give +5
sprintf("%+d", -5); # should give -5
빠른 참조 : http://www.php.net/sprintf
-------------------sprintf에 대한 PHP 언어 참조 는 양의 부호있는 정수에 대한 형식 지정자로 "% + d"를 제안합니다.
-------------------집에서 만든 기능
function make_positive($int){
if($int >= 0){
return "+".$int;
}else{
return $int;
}
}
PHP에는 자체가 있습니까?
편집 : 변경된 기능 이름.
출처
https://stackoverflow.com/questions/2005980