티스토리 뷰

반응형

$month = $_POST['month'];
$year = $_POST['year'];

// Ensure month is always two digits (e.g., 01, 02, ... 12)
$plan_month = $year . '-' . str_pad($month, 2, '0', STR_PAD_LEFT);

PHP str_pad() 함수: str_pad($month, 2, '0', STR_PAD_LEFT) 쉽게 이해하기

PHP를 처음 배우는 분들이라면 str_pad() 함수가 조금 낯설 수 있습니다. 이 글에서 str_pad($month, 2, '0', STR_PAD_LEFT)라는 코드를 쉽게 설명해 드릴게요. 이 함수가 무엇을 하는지, 그리고 왜 사용하는지 차근차근 알아보겠습니다.

str_pad() 함수란?

함수설명


str_pad()는 PHP에서 문자열의 길이를 원하는 만큼 늘리고, 그 빈 공간에 다른 문자(또는 공백)를 채우는 함수입니다. 여기서 중요한 것은 어디에 그 문자를 추가할지 정할 수 있다는 것입니다.

기본적인 str_pad() 함수의 구조는 다음과 같습니다:

str_pad(문자열, 원하는 길이, 채울 문자, 채울 방향);

 

각각의 매개변수가 무엇을 의미하는지 한번 살펴볼까요?

문자열: 길이를 늘리고 싶은 원래 문자열.
원하는 길이: 최종적으로 만들고 싶은 문자열의 길이.
채울 문자: 부족한 자리에 넣을 문자. (대부분 '0' 또는 공백을 사용하지만, 원하는 문자도 넣을 수 있습니다.)
채울 방향: 채운 문자가 문자열의 앞에 올지, 뒤에 올지, 또는 양쪽에 올지 정할 수 있습니다.
예제를 통해 알아보기
이제 str_pad($month, 2, '0', STR_PAD_LEFT) 코드를 이해해 봅시다. 이 코드는 월(month)을 2자리로 만들기 위해 사용됩니다. 예를 들어, 1월이라는 숫자를 다루고 있을 때, 우리가 원하는 것은 '01'로 만드는 것입니다.

$plan_month = $year . '-' . str_pad($month, 2, '0', STR_PAD_LEFT);

$month: 여기서 $month는 숫자입니다. 예를 들어 1월이면 1이라는 값이 들어가 있습니다.
str_pad($month, 2, '0', STR_PAD_LEFT):
$month: 1이라는 숫자를 2자리로 만들려고 합니다.
2: 최종적으로 만들려는 문자열의 길이가 2라는 의미입니다. 즉, 1이 2자리가 되어야 하므로 '01'로 만들려는 거죠.
'0': 만약 문자열이 부족하면 앞에 0을 채워넣겠다는 뜻입니다.
STR_PAD_LEFT: 문자열의 왼쪽에 0을 채우겠다는 의미입니다. 즉, 앞에 0을 넣어서 '01'로 만들어 줍니다.

$month = 1;
echo str_pad($month, 2, '0', STR_PAD_LEFT); // 결과: '01'

$month가 1이면 str_pad() 함수는 이를 두 자리로 맞추기 위해 앞에 '0'을 추가합니다. 그래서 결과는 '01'이 되는 거죠.

만약 $month가 10이라면 이미 두 자리이므로 추가적인 변경이 필요하지 않습니다.

$month = 10;
echo str_pad($month, 2, '0', STR_PAD_LEFT); // 결과: '10'


이제 $plan_month 변수는 2023-01 또는 2023-10 같은 형식으로 만들어집니다. 즉, $year와 월(month)이 적절한 형식으로 결합되어 원하는 YYYY-MM 형식의 문자열을 얻게 되는 것입니다.

왜 사용하나요?
보통 월을 표시할 때, 1월을 1로 표시하는 대신 01로 표시하는 것이 일반적입니다. 이것은 날짜 형식을 맞추고, 데이터베이스나 API에서 통일된 형식을 사용하기 위해서 중요한데요. 이때 str_pad()를 사용하면 쉽게 원하는 형식으로 변환할 수 있습니다.

PHP의 str_pad() 함수는 문자열의 길이를 조정하고, 필요한 경우 원하는 문자로 채울 수 있는 아주 유용한 도구입니다. 특히 날짜나 숫자 형식을 맞출 때 자주 사용되며, 코드가 간결해지고 가독성도 좋아집니다.

str_pad($month, 2, '0', STR_PAD_LEFT) 코드는 월을 두 자리로 맞추기 위해 사용되는 아주 좋은 예시입니다. 처음엔 조금 어려워 보일 수 있지만, 그 역할을 이해하면 아주 강력한 도구가 될 수 있습니다.

 

반응형
댓글