현재 위치: > 최신 기사 목록> Sprintf를 사용하여 문자열과 숫자를 포맷하는 방법

Sprintf를 사용하여 문자열과 숫자를 포맷하는 방법

gitbox 2025-04-28

매일 PHP 프로그래밍에서는 종종 특정 형식의 문자열 또는 숫자를 출력해야합니다. 현재 Sprintf () 함수는 좋은 도우미입니다. 그것은 출력을 더욱 제어 할 수있게 할뿐만 아니라 코드를 더 깔끔하고 읽을 수있게합니다. 이 기사를 사용하면 Sprintf () 의 사용 방법과 기술을 체계적으로 마스터하게됩니다.

1. sprintf () 란 무엇입니까?

Sprintf () 는 PHP의 내장 함수로서 형식의 문자열을 결과로 반환합니다 ( 직접 출력 없음 ). 이것은 printf () 와 유사하지만 printf ()는 직접 출력이며 Sprintf ()는 반환 후 자유롭게 처리 할 수있는 결과입니다.

기능 프로토 타입은 다음과 같습니다.

 string sprintf(string $format, mixed ...$values)
  • $ 형식 : 형식 템플릿 문자열.

  • $ 값 : 형식 템플릿에 하나 이상의 값을 삽입해야합니다.

2. sprintf ()의 기본 사용법

예 1 : 형식 문자열

 $name = 'Xiao Ming';
$city = '베이징';
$message = sprintf("안녕하세요,그래요%s,나는왔다%s。", $name, $city);
echo $message;

출력 결과 :

 안녕하세요,그래요Xiao Ming,나는왔다베이징。

예제 2 : 형식 번호

 $price = 49.5;
$message = sprintf("제품의 가격은입니다 %.2f 원", $price);
echo $message;

출력 결과 :

 제품의 가격은입니다 49.50 원

설명 :

  • %.2f는 소수점 이하 두 자리를 유지하는 부동 소수점 번호를 의미합니다.

3. 일반적인 형식 제어 문자

형식 문자 의미
%에스 sprintf ( "hello %s", "tom")
%디 정수 (소수) Sprintf ( "나이 IS %D", 25)
%에프 부동 소수점 번호 Sprintf ( "점수는 %.1f", 98.6)
%엑스 16 진 sprintf ( "숫자는 %x", 255)
%02d 2 자리 미만의 0 인 정수 sprintf ( "숫자는 %02d", 5) => 숫자는 05입니다

4. 실제 예 : 매개 변수와 링크를 생성합니다

제품 ID 및 이름을 포함한 매개 변수와 함께 제품 세부 사항 페이지에 대한 링크를 생성해야한다고 가정합니다.

 $productId = 123;
$productName = '블루투스 헤드폰';
$url = sprintf("https://gitbox.net/product/view.php?id=%d&name=%s", $productId, urlencode($productName));
echo $url;

출력 결과 :

 https://gitbox.net/product/view.php?id=123&name=%E8%93%9D%E7%89%99%E8%80%B3%E6%9C%BA

5. Sprintf ()의 고급 사용 기술

1. 매개 변수를 여러 번 재사용하십시오

번호 매기기를 사용하여 형식 문자열의 매개 변수를 반복 할 수 있습니다.

 $name = '장 산';
$message = sprintf("%1\$s,안녕하세요!%1\$s,이메일을 확인하십시오。", $name);
echo $message;

출력 결과 :

 장 산,안녕하세요!장 산,이메일을 확인하십시오。

설명 : %1 \ $ s는 첫 번째 매개 변수가 사용되었음을 의미합니다.

2. 출력 정렬 (테이블 생성에 적합)

 $line = sprintf("| %-10s | %10s |", "상품", "가격");
echo $line;

출력 결과 :

 | 상품        |       가격 |

설명 :

  • %-10s : 왼쪽 정렬, 10 자 폭을 차지합니다.

  • %10s : 오른쪽 정렬, 10자를 설명합니다.

6. Sprintf와 보안

Sprintf ()를 사용하는 것은 형식이 유연하지만 웹 페이지, 데이터베이스 및 파일에 출력 할 때 안전에주의를 기울여야합니다.

  • 웹 페이지에 출력 할 때 htmlspecialchars ()를 사용해야합니다.

  • SQL을 구축 할 때 Sprintf ()를 직접 사용하지 마십시오. 파라미터 바인딩 (예 : PDO 또는 MySQLI에 대한 전처리 문)을 사용하는 것이 좋습니다.

  • URL의 매개 변수는 urlencode () 로 인코딩하는 것이 좋습니다.

7. 요약

Sprintf () 는 강력하고 우아한 서식 도구입니다. 기본 구문 및 형식 제어 문자를 마스터하는 한 문자열 처리에 날개를 추가 할 수 있습니다. 페이지 디스플레이, 로깅 또는 구조화 된 데이터 생성에 관계없이 더 명확하고 관리 가능한 코드를 작성하는 데 도움이 될 수 있습니다.

프로젝트에 적용하십시오!