sprintf

(PHP 3, PHP 4 )

sprintf -- 포멧된 문자열을 반환한다.

설명

string sprintf ( string format [, mixed args])

포맷 문자인format에 따라서 생성된 문자열을 반환한다. format.

포맷 스트링은 0 혹은 다른 지시문이 올 수 있다: 직접 결과로 복사된는 일반적인 문자(%을 포함하여)와 변환 특수 문자(conversion specifications), 각각은 자신의 매개변수를 패치하는 결과를 나타낸다. 이는 sprintf()printf() 두두에서도 마찬가지이다.

각각 변환 특수문자는 퍼센트 기호(%) 로 구성되며, 차례 차례로 다음의 요소가 하나 혹은 여러개 따라온다 :

  1. 선택적인 패딩 지정자(padding specifier)는 결과로 문자열 오른쪽에 그 정해진 크기만큼 패딩을 가하는데 사용되며, 이는 공백 문자 일 수도 있고, 0(0 문자)일 수 도 있다. 기본은 공백으로 패딩되며, 다른 패딩 문자가 작은 따옴표 (')와 함께 앞에 붙어 지정되어 질 수도 있다. 아래의 예를 보라.

  2. 선택적인 정렬 지정자(alignment specifier)는 결과 문자열이 왼쪽 정렬될 것인지 오른쪽 정렬 될 것인지를 결정하며, 기본은 오른쪽 정렬이다; -문자는 왼쪽 정렬로 만든다.

  3. 선택적인 숫자 폭 지정자(width specifier)는 (최소) 얼마나 많은 문자들을 이 변환이 결과로 낼 것인가를 말해준다.

  4. 선택적인 정밀도 지시자(precision specifier)는 얼마나 많은 십진 숫자가 소수점 이하의 수로서 표시될 것인가를 지정한다. 이 옵션은 double 형에서만 유효하다.(숫자를 포메팅 하는데 있어서 유용한 다른 함수로 number_format()이 있다.)

  5. 형 지시자(type specifier)는 인수 데이타가 적용될 형식을 지정한다. 가능한 타입으로는 :

    % - 리터럴 퍼센트 문자. 어떤 인수도 필요하지 않다.
    b - 인수는 정수처럼 처리되며, 십진수로 표현된다.
    c - 인수는 정수처럼 처리되며, 그 숫자의 ASCII코드에 해당하는 문자로 표현된다.
    d - 인수는 정수처럼 처리되며, 10진수로 표현된다.
    f - 인수는 더블형으로 처리되며, 수숫점을 가지는 실수 숫자로 표현된다.
    o - 인수는 정수로 처리되며, 8진수 형태로 표현된다.
    s - 인수는 문자열로 처리, 표현된다.
    x - 인수는 정수로 처리되며, (소문자로 표시되는)16진수로 표현된다.
    X - 인수는 정수로 처리되며, (대문자로 표시되는)16진수로 표현된다.

printf(), sscanf(), fscanf(), 그리고 number_format()를 참고하라.

예 1. sprintf(): 0으로 채워진 정수

$isodate = sprintf ("%04d-%02d-%02d", $year, $month, $day);

예 2. sprintf(): 통화의 포맷

$money1 = 68.75;

$money2 = 54.35;

$money = $money1 + $money2;

// echo $money는  "123.1" 을 출력;

$formatted = sprintf ("%01.2f", $money);

// echo $formatted 는 output "123.10"을 출력