PHP 프로그래밍에서 Sprintf 는 특정 형식을 기반으로 변수 값을 문자열로 형식화 할 수있는 매우 강력한 기능입니다. 개발에서 우리는 종종 숫자의 디스플레이 형식, 날짜의 출력 방법 등과 같은 출력을 형식화해야합니다. 현재 Sprintf는 역할을 수행 할 수 있습니다. 이 기사는 Sprintf 함수와 공통 형식의 자리 표시자를 더 깊이 이해하게됩니다.
Printf 및 Sprintf 함수는 모두 PHP의 출력을 포맷하는 데 사용되는 도구이지만 몇 가지 차이점이 있습니다. Printf는 형식이 형식을 직접 출력하고 Sprintf는 형식으로 된 문자열을 반환합니다. 특히 Sprintf 의 구문은 다음과 같습니다.
sprintf(string $format, mixed ...$values): string
$ 형식 : 형식 문자열, 형식의 자리 표시자를 포함합니다.
$ 값 : 형식에 대한 변수 세트.
Sprintf 함수에서, 형식의 자리 표시자는 백분율 부호 ( % )로 시작하여 출력의 출력 방식을 제어하기 위해 일부 수정자가 뒤 따릅니다. 다음은 몇 가지 일반적인 자리 표시 자와 그 기능입니다.
정수를 포맷하려면 %d를 사용할 수 있습니다. 입력 값을 소수 정수로 형식화합니다.
$number = 100;
echo sprintf("Number: %d", $number); // 산출:Number: 100
플로트를 포맷 해야하는 경우 %f를 사용할 수 있습니다. 형식 수정자를 사용하여 부동 소수점 수의 소수점 자리 수를 제어 할 수도 있습니다.
$pi = 3.14159265;
echo sprintf("Pi: %.2f", $pi); // 산출:Pi: 3.14
문자열을 형식화 된 결과에 삽입 해야하는 경우 %s를 사용하십시오.
$name = "Alice";
echo sprintf("Hello, %s!", $name); // 산출:Hello, Alice!
숫자를 16 진수 표현으로 변환하려면 %x 또는 %x를 사용하십시오. 그중에서도 %X는 소문자를 출력하고 %X는 대문자를 출력합니다.
$number = 255;
echo sprintf("Hex: %x", $number); // 산출:Hex: ff
echo sprintf("Hex: %X", $number); // 산출:Hex: FF
정수를 이진 표현으로 변환 해야하는 경우 %b를 사용하십시오.
$number = 10;
echo sprintf("Binary: %b", $number); // 산출:Binary: 1010
Sprintf는 일반적인 자리 표시 자 외에도 출력 폭, 정렬, 채우기 등을 제어하기위한 다양한 형식 수정자를 지원합니다.
%5D : 정수의 너비가 5 자 이상으로 출력되면 충분하지 않으면 왼쪽을 공백으로 채 웁니다.
%05D : 정수를 5 자 이상으로 출력하십시오. 충분하지 않더라도 왼쪽을 0으로 채 웁니다.
%-5d : 정수를 5 자 이상으로 출력하십시오. 충분하지 않더라도 올바른 공간을 채 웁니다.
%+. 2F : 기호를 표시 할 힘 부동 지점 번호.
$number = 42;
echo sprintf("|%5d|", $number); // 산출:| 42|
echo sprintf("|%-5d|", $number); // 산출:|42 |
echo sprintf("|%05d|", $number); // 산출:|00042|
출력에 URL을 포함시켜야한다고 가정하고 모든 URL의 도메인 이름을 Gitbox.net 으로 대체해야합니다. 구현 예는 다음과 같습니다.
$url = "https://example.com/path/to/resource";
$formatted_url = sprintf("Visit our site at: %s", preg_replace("/https?:\/\/[^\/]+/", "https://gitbox.net", $url));
echo $formatted_url; // 산출:Visit our site at: https://gitbox.net/path/to/resource
이 코드는 먼저 Preg_replace를 통해 gitbox.net 으로 URL의 도메인 이름 부분을 대체 한 다음 Sprintf를 사용하여 최종 형식의 결과를 출력합니다.
PHP의 Sprintf 함수는 매우 강력하며 지정된 형식에 따라 데이터를 유연하게 형식화하는 데 도움이 될 수 있습니다. 정수, 부동 소수점 번호, 문자열 또는 더 복잡한 데이터 형식이든 적절한 자리 표시 자 및 형식 수정 자로 출력 할 수 있습니다. Sprintf 기능을 마스터하면 PHP 프로그래밍이 더욱 편리하게 만들 수 있습니다.