fprintf 함수

함수 fprintf는 지정된 패턴에 따라 문자열을 형식화하고 결과를 파일 스트림에 기록합니다. 첫 번째 매개변수로 파일 리소스를, 두 번째 매개변수로 형식 문자열을, 그리고 이후 매개변수로 패턴에 대입할 값들을 받습니다. 파일 리소스 대신 null을 전달하면, 함수는 스트림에 쓰는 대신 문자열을 반환합니다.

형식 문자열은 % 기호로 시작하는 특수 문자(형식 지정자)를 사용하며, 출력 형식을 제어합니다.

구문

phpfprintf(resource $handle, string $format, mixed ...$values): int|false

형식 지정자

지정자 설명
%s 문자열
%d 부호 있는 정수(십진법)
%u 부호 없는 정수(십진법)
%f 부동 소수점 숫자(로캘 의존적)
%F 부동 소수점 숫자(로캘 비의존적)
%c ASCII 코드에 의한 문자
%x 정수를 16진법(소문자)으로
%X 정수를 16진법(대문자)으로
%o 정수를 8진법으로
%b 정수를 2진법으로
%e 과학적 표기법(소문자)
%E 과학적 표기법(대문자)
%g %e 또는 %f의 짧은 표기
%G %E 또는 %F의 짧은 표기
%% 퍼센트 기호

예제

형식화된 문자열을 파일에 쓰기:

php<?php
  $file = fopen('output.txt', 'w');
  fprintf($file, "Name: %s, Age: %d", "John", 25);
  fclose($file);
?>

파일 output.txt의 내용:

php'Name: John, Age: 25'

예제

다양한 형식 지정자 사용하기:

php<?php
  $res = fopen('php://temp', 'w');
  fprintf($res, "Float: %.2f, Hex: %x", 12.3456, 255);
  rewind($res);
  echo stream_get_contents($res);
  fclose($res);
?>

코드 실행 결과:

php'Float: 12.35, Hex: ff'

예제

파일 대신 문자열 반환하기:

php<?php
  $result = sprintf("Today is %s", date('Y-m-d'));
  echo $result;
?>

코드 실행 결과:

php'Today is 2023-11-15'

함께 보기

  • 함수 sprintf,
    형식화된 문자열을 반환합니다
  • 함수 vprintf,
    형식화된 문자열을 출력합니다
  • 함수 file_put_contents,
    데이터를 파일에 씁니다