라이브러리
[PHP] NumberFormatter::parse - 숫자 구문 분석
NumberFormatter::parse
PHP의 `NumberFormatter` 클래스는 국제화와 지역화에 사용되는 클래스입니다. `parse` 메소드는 숫자를 지정된 지역화 형식으로 파싱하는 메소드입니다.
사용법
`parse` 메소드는 두 개의 매개변수를 받습니다.
- `$number`: 파싱할 숫자
- `$format`: 파싱할 숫자의 형식
예제
#hostingforum.kr
php
$formatter = new NumberFormatter('ko_KR', NumberFormatter::DECIMAL);
$number = '1,234,567.89';
$format = ',.##';
$parsedNumber = $formatter->parse($number, $format);
echo "파싱된 숫자: $parsedNumber
";
이 예제에서는 `$number` 변수에 '1,234,567.89'라는 숫자를 저장하고, `$format` 변수에 ',.##'라는 형식을 저장합니다. `parse` 메소드는 이 숫자를 지정된 형식으로 파싱하고, `$parsedNumber` 변수에 결과를 저장합니다.
결과
파싱된 숫자: 1234567.89
예제 2: 다른 지역화 형식
#hostingforum.kr
php
$formatter = new NumberFormatter('en_US', NumberFormatter::DECIMAL);
$number = '1,234,567.89';
$format = ',.##';
$parsedNumber = $formatter->parse($number, $format);
echo "파싱된 숫자: $parsedNumber
";
이 예제에서는 `$number` 변수에 '1,234,567.89'라는 숫자를 저장하고, `$format` 변수에 ',.##'라는 형식을 저장합니다. `parse` 메소드는 이 숫자를 지정된 형식으로 파싱하고, `$parsedNumber` 변수에 결과를 저장합니다. 이 경우 결과는 1,234,567.89입니다.
결과
파싱된 숫자: 1,234,567.89
예제 3: 오류 처리
#hostingforum.kr
php
$formatter = new NumberFormatter('ko_KR', NumberFormatter::DECIMAL);
$number = '1,234,567.89';
$format = ',';
$parsedNumber = $formatter->parse($number, $format);
if ($parsedNumber === false) {
echo "오류 발생: $formatter->getErrorCode() - $formatter->getErrorMessage()
";
} else {
echo "파싱된 숫자: $parsedNumber
";
}
이 예제에서는 `$number` 변수에 '1,234,567.89'라는 숫자를 저장하고, `$format` 변수에 ','라는 형식을 저장합니다. `parse` 메소드는 이 숫자를 지정된 형식으로 파싱하고, `$parsedNumber` 변수에 결과를 저장합니다. 이 경우 `$format` 변수에 저장된 형식은 숫자의 소수 부분을 제거하므로 오류가 발생합니다.
결과
오류 발생: 1 - Invalid format string
참고
`NumberFormatter` 클래스는 PHP 7.2 이상에서 사용할 수 있습니다. 또한 `parse` 메소드는 PHP 7.2 이상에서 사용할 수 있습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.