説明
string
sprintf ( string format [, mixed args])
フォーマット文å—列formatã«åŸºã¥ã生æˆã•れãŸ
æ–‡å—列を返ã—ã¾ã™ã€‚
フォーマット文å—列ã¯0個以上ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒ†ã‚£ãƒ–(指示å)ã«ã‚ˆã‚Š
æ§‹æˆã•れã¾ã™ã€‚ディレクティブã«ã¯ã€ãã®ã¾ã¾çµæžœã«ã‚³ãƒ”ーã•れる
(%を除ã)é€šå¸¸ã®æ–‡å—ã¨å¤‰æ›æŒ‡å®šå
(conversion specifications)ãŒã‚りã€å–り出ã•れる際ã¯
ã©ã¡ã‚‰ã‚‚ãれ自身ãŒãƒ‘ラメータã¨ãªã‚Šã¾ã™ã€‚ã“ã®ã“ã¨ã¯
sprintf()ã®å ´åˆã ã‘ã§ãªãprintf()
ã®å ´åˆã‚‚åŒæ§˜ã§ã™ã€‚
å„å¤‰æ›æŒ‡å®šåã¯ãƒ‘ーセント記å·(%)ã®å¾Œã«ã€ã“れら
ã®è¦ç´ ãŒä¸€ã¤ä»¥ä¸Šç¶šã„ãŸã‚‚ã®ã«ãªã‚Šã¾ã™ã€‚
オプションã®ãƒ‘ディング指定å。ã“れã¯ã€
æ–‡å—åˆ—ãŒæ£ã—ã„é•·ã•ã«ãªã‚‹ã¾ã§ã©ã‚“ãªæ–‡å—ã§åŸ‹ã‚ã‚‹ã‹ã¨ã„ã†ã“ã¨ã‚’
指定ã—ã¾ã™ã€‚ã“れã¯ç©ºç™½ã‹ã¾ãŸã¯0(æ–‡å—'0')
ã®ã„ãšã‚Œã‹ã§ã™ã€‚デフォルトã§ã¯ç©ºç™½ã§åŸ‹ã‚られã¾ã™ã€‚
ã“れ以外ã®ãƒ‘ディング文å—を指定ã™ã‚‹ã«ã¯ã€ãã®æ–‡å—ã®å‰ã«å˜ä¸€
引用符(')ã‚’ç½®ãã¾ã™ã€‚後述ã®ä¾‹ã‚’å‚ç…§ã—ã¦
ãã ã•ã„。
オプションã®ã‚¢ãƒ©ã‚¤ãƒ³ãƒ¡ãƒ³ãƒˆæŒ‡å®šå。ã“れã¯
çµæžœã‚’左寄ã›ã¾ãŸã¯å³å¯„ã›ã«ã—ãŸã„å ´åˆã«æŒ‡å®šã—ã¾ã™ã€‚デフォルトã¯
å³å¯„ã›ã§ã™ã€‚ã“ã“ã§-æ–‡å—を指定ã™ã‚‹ã¨å·¦å¯„ã›
ã¨ãªã‚Šã¾ã™ã€‚
ã‚ªãƒ—ã‚·ãƒ§ãƒ³ã®æ•°å—。ã“れã¯è¡¨ç¤ºå¹…指定åã§ã™ã€‚
çµæžœã‚’(最低)何æ¡ã«ã™ã‚‹ã‹ã‚’指定ã—ã¾ã™ã€‚
オプションã®ç²¾åº¦æŒ‡å®šå。ã“れã¯ã€æµ®å‹•å°æ•°ç‚¹
æ•°ã«å¯¾ã—ã¦ä½•å€‹ã®æ•°å—を表示ã™ã‚‹ã‹??定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€
double(å€ç²¾åº¦ï¼‰åž‹ä»¥å¤–ã«ã¯ä½•ã®åŠ¹æžœã‚‚ã‚りã¾ã›ã‚“。
(æ•°å—をフォーマットã™ã‚‹éš›ã«ä¾¿åˆ©ãªé–¢æ•°ã¨ã—ã¦ä»–ã«
number_format() ãŒã‚りã¾ã™ã€‚)
型指定å。引数を何ã®åž‹ã¨ã—ã¦æ‰±ã†ã‹ã‚’指定
ã—ã¾ã™ã€‚指定ã§ãる型を以下ã«ç¤ºã—ã¾ã™ã€‚
% - パーセント文å—。引数ã¯ä¸è¦ã§ã™ã€‚
|
b - 引数を整数ã¨ã—ã¦æ‰±ã„ã€ãƒã‚¤ãƒŠãƒªã®æ•°å€¤
ã¨ã—ã¦è¡¨ç¾ã—ã¾ã™ã€‚
|
c - 引数を整数ã¨ã—ã¦æ‰±ã„ã€ãã® ASCII 値
ã®æ–‡å—ã¨ã—ã¦è¡¨ç¾ã—ã¾ã™ã€‚
|
d - 引数を整数ã¨ã—ã¦æ‰±ã„ã€10 進数ã¨ã—ã¦
表ç¾ã—ã¾ã™ã€‚
|
u - 引数を整数ã¨ã—ã¦æ‰±ã„ã€ç¬¦å·ç„¡ã—ã®10進
æ•°ã¨ã—ã¦è¡¨ç¾ã—ã¾ã™ã€‚
|
f - 引数を double ã¨ã—ã¦æ‰±ã„ã€æµ®å‹•å°æ•°ç‚¹æ•°
ã¨ã—ã¦è¡¨ç¾ã—ã¾ã™ã€‚
|
o - 引数を整数ã¨ã—ã¦æ‰±ã„ã€8 進数ã¨ã—ã¦
表ç¾ã—ã¾ã™ã€‚
|
s - 引数を文å—列ã¨ã—ã¦æ‰±ã„ã€è¡¨ç¾ã—ã¾ã™ã€‚
|
x - 引数を整数ã¨ã—ã¦æ‰±ã„ã€16 進数ã¨ã—ã¦
(å°æ–‡å—ã§)表ç¾ã—ã¾ã™ã€‚
|
X - 引数を整数ã¨ã—ã¦æ‰±ã„ã€16 進数ã¨ã—ã¦
(大文å—ã§)表ç¾ã—ã¾ã™ã€‚
|
PHP ãƒãƒ¼ã‚¸ãƒ§ãƒ³ 4.0.6 ã§ãƒ•ォーマット文å—列ã§å¼•æ•°ã®ç•ªå·ä»˜ã‘/交æ›ãŒ
サãƒãƒ¼ãƒˆã•れã¾ã—ãŸã€‚以下ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
例 1引数ã®äº¤æ› $format = "There are %d monkeys in the %s";
printf($format,$num,$location); |
|
ã“ã®å‡ºåŠ›ã¯ã€"There are 5 monkeys in the tree" ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
ã“ã“ã§ã€ãƒ•ォーマット文å—列ãŒåˆ¥ã®ãƒ•ァイルã«ã‚ã‚‹å ´åˆã‚’考ãˆã¦ã¿ã¾ã—ょ
ã†ã€‚ã“れã¯ã€å‡ºåŠ›ã‚’å›½éš›åŒ–ã—ãŸã‚Šã™ã‚‹å ´åˆã«è¡Œã‚れるå¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚
ã“ã®å ´åˆã€æ¬¡ã®æ›¸ã変ãˆã‚‰ã‚Œã¾ã™ã€‚
例 2引数ã®äº¤æ› $format = "The %s contains %d monkeys";
printf($format,$num,$location); |
|
ã“ã“ã§ã€å•題ãŒç™ºç”Ÿã—ã¾ã™ã€‚フォーマット文å—列ã«ãŠã‘ã‚‹ç½®æ›æŒ‡ç¤ºåã®
é †ç•ªã¯ã€ã‚³ãƒ¼ãƒ‰ã«ãŠã‘る引数ã®é †ç•ªã¨ä¸€è‡´ã—ã¦ã„ã¾ã›ã‚“。コードã¯å¤‰æ›´
ã›ãšã€ç½®æ›æŒ‡ç¤ºåãŒå‚ç…§ã™ã‚‹ãƒ•ォーマット文å—åˆ—ã§æŒ‡ç¤ºã‚’è¡Œã†æ–¹ãŒæœ›ã¾
ã—ã„ã¨è¨€ãˆã¾ã™ã€‚フォーマット文å—列を次ã®ã‚ˆã†ã«æ›¸ãæ›ãˆã¦ã¿ã¾ã—ょ
ã†ã€‚
例 3引数ã®äº¤æ› $format = "The %2\$s contains %1\$d monkeys";
printf($format,$num,$location); |
|
åŠ ãˆã¦ã€ã“れã«ã‚ˆã‚Šã‚³ãƒ¼ãƒ‰ã«å¼•æ•°ã‚’è¿½åŠ ã›ãšã«ç½®æ›æŒ‡ç¤ºåを複数回使用
ã™ã‚‹ã“ã¨ã‚‚å¯èƒ½ã«ãªã‚Šã¾ã™ã€‚例ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
例 4引数ã®äº¤æ› $format = "The %2\$s contains %1\$d monkeys.
That's a nice %2\$s full of %1\$d monkeys.";
printf($format,$num,$location); |
|
printf(), sscanf(),
fscanf(), number_format()
ã‚‚å‚照下ã•ã„。