Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP FILTER_SANITIZE_NUMBER_INT 상수 이해하기: 숫자 데이터 정리 방법

PHP의 FILTER_SANITIZE_NUMBER_INT 상수는 입력값에서 숫자와 관련 없는 불법 문자를 모두 제거하는 데 사용되는 필터입니다.

FILTER_SANITIZE_NUMBER_INT란?

이 필터는 문자열에서 숫자(int) 형식과 관련된 문자만 남기고 나머지를 삭제합니다. 구체적으로 다음과 같은 문자가 허용됩니다.

  • 숫자 0~9
  • 덧셈 기호(+) 및 뺄셈 기호(-)

그 외의 모든 문자는 필터링 과정에서 자동으로 제거됩니다. 사용자 입력값에서 숫자 데이터만 안전하게 추출하고 싶을 때 유용합니다.

반환값

filter_var() 함수와 함께 사용하면 정리(sanitize)된 문자열을 반환합니다. 참고로 상수 자체는 값만 담고 있으며, 실제 필터링은 filter_var() 함수가 수행합니다.

사용 예제

<?php
    $var = "4-5+9p";
    var_dump(filter_var($var, FILTER_SANITIZE_NUMBER_INT));
?>

실행 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

string(5) "4-5+9"

결과 분석

입력값 "4-5+9p"에서 알파벳 'p'는 숫자 표현에 허용되지 않는 문자이므로 제거되었습니다. 따라서 최종적으로 숫자와 부호만 남은 "4-5+9"라는 5글자 문자열이 반환됩니다.

이처럼 FILTER_SANITIZE_NUMBER_INT는 폼 입력값 검증, 데이터 클렌징 등에서 숫자 형태의 데이터를 확보할 때 간편하게 활용할 수 있습니다.