YesYo.com MintState Forums
뒤로    Go3.co.kr MintState BBS > Tech > PHP
검색
멤버이름    오토
비밀번호 
 

[function] sprintf

페이지 정보

작성자 MintState 댓글 0건 조회 12,824회 작성일 08-11-03 11:30

본문

[function] sprintf

sprintf -- 형식화한 문자열을 반환합니다.
[COLOR="Navy"]string sprintf ( string format [, mixed args])[/COLOR]

포맷 문자열 format에 따라 생성한 문자열을 반환합니다.

포맷 문자열은 0개 이상의 지시어를 조합합니다: 일반 문자는 (%을 제외하고) 결과에 그대로 복사하고, 변환 특정어는 각각의 인자로 교체한 결과를 가집니다. 이는 sprintf()와 printf()에 모두 적용됩니다.

각각의 변환 특정어는 퍼센트 기호(%)에 다음의 요소들이 붙어서 구성됩니다:

선택적인 패딩 지정어는 적합한 문자열의 크기를 얻기 위한 패딩에 사용하는 문자를 지정합니다. 이는 스페이스 문자나 0 (제로 문자)일 수 있습니다. 기본값은 스페이스로 채웁니다. 다른 패딩 문자는 작은 따옴표(')를 앞에 붙여서 지정할 수 있습니다. 아래의 예제를 참고하십시오.

선택적인 정렬 지정어는 결과를 왼쪽 정렬할지, 오른쪽 정렬할 지를 결정합니다. 기본값은 오른쪽 정렬입니다; 여기에 - 문자를 사용하면 왼쪽 정렬이 됩니다.

선택적인 수, 너비 지정어는 얼마나 많은 문자(최소한)가 결과에 들어갈지를 결정합니다.

선택적인 정밀도 지정어는 부동 소수점 실수에서 얼마나 많은 소수점 아래의 수를 표시할지를 결정합니다. 이 옵션은 float형 이외에는 영향을 주지 않습니다. (수를 포맷하는 다른 유용한 함수에는 number_format()이 존재합니다.)

형 지정어는 인자 데이터를 어떤 형으로 취급할지 결정합니다. 가능한 형은:
% - 퍼센트 문자. 인자는 필요하지 않습니다. 
b - 인자를 정수로 취급하고, 2진수로 표현합니다. 
c - 인자를 정수로 취급하고, ASCII 값에 해당하는 문자로 표현합니다. 
d - 인자를 정수로 취급하고, (부호 있는) 10진수로 표현합니다. 
u - 인자를 정수로 취급하고, 부호 없는 10진수로 표현합니다. 
f - 인자를 float로 취급하고, 실수로 표현합니다. 
o - 인자를 정수로 취급하고, 8진수로 표현합니다. 
s - 인자를 문자열로 취급하고 표현합니다. 
x - 인자를 정수로 취급하고 16진수(소문자 표시)로 표현합니다. 
X - 인자를 정수로 취급하고, 16진수(대문자 표시)로 표현합니다. 

ex1)
1<?php
2$money1 = 68.75;
3$money2 = 54.35;
4$money = $money1 + $money2;
5// echo $money 는 "123.1"를 출력합니다;
6$formatted = sprintf("%01.2f", $money);
7// echo $formatted 는 "123.10"를 출력합니다.
8?>


ex2) 1 -> 01
1<?php
2$data = 1;
3$format_string = sprintf("%02d",$data);
4?>


ex3) Display an binary string like an Hex Editor.
01<?php
02function BinToHexView($binstr) {
03    $HexView = "";
04 
05    $binpos = 0;
06    $binsize = strlen($binstr);
07    $binr = ( ($binsize-$binpos-16) > 16 ? 16 : $binsize-$binpos-16 );
08 
09    while ($binr > 0) {
10        $hline = "";
11        $dline = "";
12        $HexView .= sprintf("%04x", $binpos);
13        for ($c=0;$c<$binr;$c++) {
14            $hline .= sprintf("%02x",ord($binstr[$binpos+$c]))." ";
15        }
16        for ($c=0;$c<$binr;$c++) {
17            $ord = ord($binstr[$binpos+$c]);
18            $dline .= ( $ord<32 || $ord>126 ? "." : $binstr[$binpos+$c] );
19        }
20        $HexView .= sprintf("  %-48s  %-16s\n", $hline, $dline);
21        $binpos += $binr;
22        $binr = ( ($binsize-$binpos-16) > 16 ? 16 : $binsize-$binpos-16 );
23    }
24 
25    return $HexView;
26}
27?>

댓글목록

등록된 댓글이 없습니다.

Total 165건 3 페이지
PHP 목록
번호 제목 글쓴이 조회 날짜
115 MintState 14819 11-10
114 MintState 16474 11-10
113 MintState 17414 11-10
112 MintState 21551 11-10
111 MintState 12762 11-10
110 MintState 30987 11-10
109 MintState 16203 11-10
108 MintState 14945 11-10
107 MintState 14853 11-10
106 MintState 12884 11-10
105 MintState 21105 11-10
104 MintState 13256 11-10
103 MintState 13106 11-10
102 MintState 20345 11-10
101 MintState 11756 11-10
100 MintState 12816 11-10
99 MintState 20832 11-10
98 MintState 14584 11-10
97 MintState 13190 11-10
96 MintState 11710 11-10
95 MintState 13631 11-10
94 MintState 12178 11-03
93 MintState 11642 11-03
열람중 MintState 12825 11-03
91 MintState 15835 11-03
게시물 검색
모바일 버전으로 보기
CopyRight ©2004 - 2025, Go3.co.kr MintState. ™