>  기사  >  백엔드 개발  >  PHP의 스프린트프

PHP의 스프린트프

PHPz
PHPz원래의
2024-08-29 12:34:54803검색

php의 sprintf는 형식화된 문자열을 변수에 쓰고 형식화된 문자열을 반환하는 데 사용되는 함수입니다. PHP에서는 버전 4 이상에서 이 sprintf 함수를 지원합니다. sprintf() 함수는 printf() 함수와 유사하지만 둘 사이의 주요이자 유일한 차이점은 sprintf()가 printf() 함수처럼 브라우저에 형식화된 출력을 표시하는 대신 출력을 문자열로 저장한다는 것입니다. sprintf() 함수는 echo와 함께 작동할 수 있습니다. 즉, sprintf()에서 반환된 형식화된 문자열은 echo를 사용하여 브라우저에 인쇄됩니다. 주제를 더 깊이 파고들어 구문, 접근 가능한 형식을 살펴보고 몇 가지 프로그램을 해결해 보겠습니다.

무료 소프트웨어 개발 과정 시작

웹 개발, 프로그래밍 언어, 소프트웨어 테스팅 등

구문

PHP의 sprintf() 함수 구문은 다음과 같습니다.

sprintf(format, arg1, arg2, arg3, …….)

여기서 arg1, arg2, arg3 등은 sprintf()의 매개변수입니다. arg1은 처음에 삽입되는 필수 인수입니다. arg2, arg3, ………삽입할 선택적 인수입니다.

형식: 필수 매개변수이며 변수의 형식을 지정하는 방법에 대한 문자열을 지정합니다.

가능한 형식은 다음과 같습니다.

매개변수

Parameter

Description

%b Argument present as a binary number
%% Returns % sign
%d Parameter treated as a positive integer, represented as a decimal number
%c Parameter treated as an integer, represented as a character with ASCII
%e Precision specifier that specifies the number of digits after the decimal point. Scientific notation with lowercase
%u Parameter treated as an integer, represented as unsigned integer
%f Floating-point number(locale)
%g General format
%o Represented as Octal number
%x Represented as Hexadecimal number with lowercase letters
%s Argument presented and treated as a string
%E Similar to %e specifier but with Uppercase.
%F Floating-point number(Non-locale)
%G Similar to %g specifier but uses %E and %F
%X Represented with Hexadecimal number but with uppercase

설명

%b 이진수로 존재하는 인수 %% % 기호를 반환합니다 %d 양의 정수로 처리되고 십진수로 표시되는 매개변수 %c 정수로 처리되는 매개변수, ASCII 문자로 표시됨 %e 소수점 이하 자릿수를 지정하는 정밀도 지정자입니다. 소문자를 사용한 과학적 표기법 %u 정수로 처리되는 매개변수, 부호 없는 정수로 표시됨 %f 부동 소수점 숫자(로케일) %g 일반 형식 %o 8진수로 표현 %x 소문자가 포함된 16진수로 표시 %s 인수는 문자열로 표시되고 처리됩니다 %E %e 지정자와 유사하지만 대문자를 사용합니다. %F 부동 소수점 수(로캘 없음) %G %g 지정자와 유사하지만 %E 및 %F를 사용합니다 %X 16진수로 표시되지만 대문자로 표시

There are some additional format values, which are placed between % and letter.

  • +, both + and – are forced in front of numbers. Negative numbers are marked by default.
  •  ‘ Specifies what is to be used as padding.
  •  – Left justifies the variable
  • [0-9] Specifies minimum width held to the variable.
  • .[0-9] Specifies the number of decimal digits or the maximum string length.

How does sprintf() function work in PHP?

Let us see How sprintf() function in PHP works with few examples,

Example #1

Code:

<!DOCTYPE html>
<html>
<body>
<?php
$num1 = 321234;
$num2 = 860;
$text = sprintf("%f,%f",$num1, $num2);
echo $text;
?>
</body>
</html>

Output:

PHP의 스프린트프

Here, we have taken two float values and using sprintf() function, scanned the variables, and using echo, have printed the floating values on the console.

Example #2: for floating point decimals

Code:

<!DOCTYPE html>
<html>
<body>
<?php
$num1 = 4563;
$text = sprintf("With 3 decimals: %1\$.3f
<br>With no decimals: %1\$u <br>With single decimal: %1\$.1f",$num1);
echo $text;
?>
</body>
</html>

Output:

PHP의 스프린트프

So here for floating values, we have specified as to no decimals, or single decimal, or 3 decimal values.

Example #3: with string specifiers

Code:

<!DOCTYPE html>
<html>
<body>
<?php
$string1 = 'PHPv4';
echo sprintf("[%s]",$string1)."<br>";
echo sprintf("[%08s]",$string1)."<br>";
echo sprintf("[%-8s]",$string1)."<br>";
echo sprintf("[%8s]",$string1)."<br>";
echo sprintf("[%8.8s]",$string1)."<br>";
echo sprintf("[%'*8s]",$string1)."<br>";
?>
</body>
</html>

Output:

PHP의 스프린트프

So based on the output, [%s] will return the string as it is

[%08s] will return string with zero padding [%-8s] will return string with left justification [%8s] will return string with the right justification [%8.8s] will return string with left justification, cuts of characters after a specific value [%’*8s] will return string with additional *

Example #4: with Argument swapping

Code:

<!DOCTYPE html>
<html>
<body>
<?php
$num = 7;
$fruits = 'Mangoes';
$arg1 = 'The %2$s are %1$d in number';
echo sprintf($arg1, $num, $fruits);
?>
</body>
</html>

Output:

PHP의 스프린트프

So here, format string supports argument swapping/ numbering.
Imagine if the placeholders in format string do not match the order of the arguments as shown above. And hence, we have indicated the arg1 which arguments refer to which placeholders.

Example #5: for all format specifiers

Code:

<!DOCTYPE html>
<html>
<body>
<?php
$arg1 = 456;
$arg2 = -456;
$str = 57;
echo sprintf("%%b = %b",$arg1)."<br>";
echo sprintf("%%d = %d",$arg1)."<br>";
echo sprintf("%%d = %d",$arg2)."<br>";
echo sprintf("%%c = %c",$str)."<br>";
echo sprintf("%%e = %e",$arg1)."<br>";
echo sprintf("%%u = %u",$arg1)."<br>";
echo sprintf("%%u = %u",$arg2)."<br>";
echo sprintf("%%f = %f",$arg1)."<br>";
echo sprintf("%%f = %f",$arg2)."<br>";
echo sprintf("%%g = %g",$arg1)."<br>";
echo sprintf("%%g = %g",$arg2)."<br>";
echo sprintf("%%o = %o",$arg1)."<br>";
echo sprintf("%%o = %o",$arg2)."<br>";
echo sprintf("%%x = %x",$arg1)."<br>";
echo sprintf("%%x = %x",$arg2)."<br>";
echo sprintf("%%s = %s",$arg1)."<br>";
echo sprintf("%%s = %s",$arg2)."<br>";
echo sprintf("%%E = %E",$arg1)."<br>";
echo sprintf("%%F = %F",$arg1)."<br>";
echo sprintf("%%G = %G",$arg1)."<br>";
echo sprintf("%%X = %X",$arg1)."<br>";
echo sprintf("%%+d = %+d",$arg1)."<br>";
echo sprintf("%%+d = %+d",$arg2)."<br>";
?>
</body>
</html>

Output:

PHP의 스프린트프

So here we have shown all the format specifiers.

With this, we shall conclude the topic ‘sprintf in php’. We have seen the syntax of sprintf() function in PHP. We have seen what each format specifier means and have Illustrated few examples on how to use sprintf in PHP. The above examples will give a clear understanding of all the format specifiers.

위 내용은 PHP의 스프린트프의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:PHP의 변수다음 기사:PHP의 변수