본문 바로가기

프로그래밍/PHP

출력 포맷정해서 출력하기

문자나 숫자등을 출력할때 특정한 포맷에 맞춰야 되는경우가 있을 것이다....
예를들어 2006-05-05 이렇게 출력해야되는데...
$year = 2006;
$month = 5;
$day = 5;
echo $year.'-'.$month.'-'.$day;
//-> 2006-5-5

if ($month < 10) $month = '0'.$month;
if ($day < 10)  $day = '0'.$day;
이렇게 하면 아래와 같이 출력될것이다..
하지만.. 조잡해 보이지 않는가...

echo $year.'-'.$month.'-'.$day;
//->2006-05-05

$year = 2006;
$month = 5;
$day = 5;

printf("%04s-%02s-%02s", $year, $month, $day);
//->2006-05-05
%04s의 의미는
0 = 삽입할 문자
4 = 삽입할 최대길이 출력할 변수의 길이가 4이하일경우 나머지는 0으로 출력한다
s = 출력할변수의 타입이 문자열이라는 의미
혹시라도 모르는 분들이 있을지 몰라서 써봅니다..