함수 vfprintf
함수 vfprintf는 형식 지정자에 따라 형식화된 문자열을 파일 스트림에 기록합니다. 첫 번째 매개변수로 파일 리소스를, 두 번째로 형식 문자열을, 세 번째로 치환할 인수 배열을 받습니다. 형식 문자열에는 % 기호로 시작하는 특수 문자(형식 지정자)가 사용되어 출력 형식을 제어합니다.
구문
vfprintf(resource $handle, string $format, array $args): int
형식 지정자
| 지정자 | 설명 |
|---|---|
%s |
문자열 |
%d |
부호 있는 정수(10진수) |
%u |
부호 없는 정수(10진수) |
%f |
부동 소수점 수(로캘 의존) |
%F |
부동 소수점 수(로캘 비의존) |
%c |
ASCII 코드에 해당하는 문자 |
%x |
16진수 정수(소문자) |
%X |
16진수 정수(대문자) |
%o |
8진수 정수 |
%b |
2진수 정수 |
%e |
과학적 표기법(소문자) |
%E |
과학적 표기법(대문자) |
%g |
%e 또는 %f의 짧은 표현 |
%G |
%E 또는 %F의 짧은 표현 |
%% |
퍼센트 기호 |
예시
파일에 형식화된 문자열 기록:
<?php
$file = fopen('output.txt', 'w');
$values = [10, 20.5, 'test'];
vfprintf($file, "Number: %d, Float: %.2f, String: %s", $values);
fclose($file);
?>
파일 output.txt의 내용:
'Number: 10, Float: 20.50, String: test'
예시
다양한 지정자 사용:
<?php
$res = fopen('php://output', 'w');
$data = [15, 12.3456, 'ABCDE'];
vfprintf($res, "Hex: %x, Scientific: %.2e, Padding: '%5s'", $data);
fclose($res);
?>
출력 결과:
'Hex: f, Scientific: 1.23e+1, Padding: \' ABCDE\''