Strings sscanf

(PHP 4 >= 4.0.1, PHP 5, PHP 7, PHP 8)

sscanf — 형식에 따라 문자열의 입력을 구문 분석합니다.


설명

sscanf(string $string, string $format, mixed &...$vars): array|int|null

sscanf() 함수는 printf()의 입력 아날로그입니다. sscanf()는 문자열 string을 읽고 지정된 format에 따라 해석합니다.

형식 문자열의 모든 공백은 입력 문자열의 모든 공백과 일치합니다. 즉, 형식 문자열의 탭(\t)도 입력 문자열의 단일 공백 ​​문자와 일치할 수 있습니다.


매개변수

string
구문 분석 중인 입력 문자열입니다.
format
sprintf() 문서에 설명되어 있는 string에 대한 해석된 형식은 다음과 같은 차이점이 있습니다.
  • 함수는 locale-aware가 아닙니다.
  • F, g, Gb는 지원되지 않습니다.
  • D는 십진수를 나타냅니다.
  • i는 기본 감지가 있는 정수를 나타냅니다.
  • n은 지금까지 처리된 문자 수를 나타냅니다.
  • s는 공백 문자에서 읽기를 중지합니다.
  • argnum$ 대신 *은 이 변환 사양의 할당을 억제합니다.
vars
선택적으로 구문 분석된 값을 포함할 참조로 변수를 전달합니다.

반환 값

이 함수에 두 개의 매개변수만 전달된 경우 구문 분석된 값은 배열로 반환됩니다. 그렇지 않고 선택적 매개변수가 전달되면 함수는 할당된 값의 수를 반환합니다. 선택적 매개변수는 참조로 전달되어야 합니다.

format에 예상되는 하위 문자열이 string 내에서 사용할 수 있는 것보다 많으면 null이 반환됩니다.


Examples

예제 #1 sscanf() 예제

                  
<?php
// getting the serial number
list($serial) = sscanf("SN/2350001", "SN/%d");
// and the date of manufacturing
$mandate = "January 01 2000";
list($month, $day, $year) = sscanf($mandate, "%s %d %d");
echo "Item $serial was manufactured on: $year-" . substr($month, 0, 3) . "-$day\n";
?>
                  
                

선택적 매개변수가 전달되면 함수는 할당된 값의 수를 반환합니다.

예제 #2 sscanf() - 선택적 매개변수 사용

                  
<?php
// get author info and generate DocBook entry
$auth = "24\tLewis Carroll";
$n = sscanf($auth, "%d\t%s %s", $id, $first, $last);
echo "<author id='$id'>
    <firstname>$first</firstname>
    <surname>$last</surname>
</author>\n";
?>
                  
                

기타

  • printf() - 형식이 지정된 문자열 출력
  • sprintf() - 형식이 지정된 문자열 반환
  • fprintf() - 스트림에 형식이 지정된 문자열 쓰기
  • vprintf() - 형식이 지정된 문자열 출력
  • vsprintf() - 형식이 지정된 문자열 반환
  • vfprintf() - 스트림에 형식이 지정된 문자열 쓰기
  • fscanf() - 형식에 따라 파일에서 입력을 구문 분석
  • number_format() - 그룹화된 천 단위로 숫자 서식 지정
  • date() - Unix 타임스탬프 형식 지정