當前位置: 首頁> 函數類別大全> sprintf

sprintf

返回格式化的字符串
名稱:sprintf
分類:字符串
所屬語言:php
一句話介紹:把格式化的字符串寫入變量中。

實例

例子1

把百分號(%)符號替換成一個作為參數進行傳遞的變量:

 <span class="token php language-php"><span class="token delimiter important"><?php</span>
<span class="token variable">$number</span> <span class="token operator">=</span> <span class="token number">2</span> <span class="token punctuation">;</span>
<span class="token variable">$str</span> <span class="token operator">=</span> <span class="token string double-quoted-string">"Shanghai"</span> <span class="token punctuation">;</span>
<span class="token variable">$txt</span> <span class="token operator">=</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"There are %u million cars in %s."</span> <span class="token punctuation">,</span> <span class="token variable">$number</span> <span class="token punctuation">,</span> <span class="token variable">$str</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span>
<span class="token keyword">echo</span> <span class="token variable">$txt</span> <span class="token punctuation">;</span>
<span class="token delimiter important">?></span></span>

親自試一試

例子2

使用格式值%f:

 <span class="token php language-php"><span class="token delimiter important"><?php</span>
<span class="token variable">$number</span> <span class="token operator">=</span> <span class="token number">123</span> <span class="token punctuation">;</span>
<span class="token variable">$txt</span> <span class="token operator">=</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%f"</span> <span class="token punctuation">,</span> <span class="token variable">$number</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span>
<span class="token keyword">echo</span> <span class="token variable">$txt</span> <span class="token punctuation">;</span>
<span class="token delimiter important">?></span></span>

親自試一試

例子3

使用佔位符:

 <span class="token php language-php"><span class="token delimiter important"><?php</span>
<span class="token variable">$number</span> <span class="token operator">=</span> <span class="token number">123</span> <span class="token punctuation">;</span>
<span class="token variable">$txt</span> <span class="token operator">=</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"帶兩位小數:%1\$.2f
<br>不帶小數:%1\$u"</span> <span class="token punctuation">,</span> <span class="token variable">$</span> number <span class="token punctuation">)</span> <span class="token punctuation">;</span>
<span class="token keyword">echo</span> <span class="token variable">$txt</span> <span class="token punctuation">;</span>
<span class="token delimiter important">?></span></span>

親自試一試

例子4

對所有可能的格式值的演示:

 <span class="token php language-php"><span class="token delimiter important"><?php</span>
<span class="token variable">$num1</span> <span class="token operator">=</span> <span class="token number">123456789</span> <span class="token punctuation">;</span>
<span class="token variable">$num2</span> <span class="token operator">=</span> <span class="token operator">-</span> <span class="token number">123456789</span> <span class="token punctuation">;</span>
<span class="token variable">$char</span> <span class="token operator">=</span> <span class="token number">50</span> <span class="token punctuation">;</span> <span class="token comment">// ASCII 字符50 是2</span>

<span class="token comment">// 註釋:格式值"%%" 返回百分號</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%b = %b"</span> <span class="token punctuation">,</span> <span class="token variable">$num1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// 二進制數</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%c = %c"</span> <span class="token punctuation">,</span> <span class="token variable">$char</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// ASCII 字符</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%d = %d"</span> <span class="token punctuation">,</span> <span class="token variable">$num1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// 帶符號的十進制數</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%d = %d"</span> <span class="token punctuation">,</span> <span class="token variable">$num2</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// 帶符號的十進制數</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%e = %e"</span> <span class="token punctuation">,</span> <span class="token variable">$num1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// 科學計數法(小寫)</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%E = %E"</span> <span class="token punctuation">,</span> <span class="token variable">$num1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// 科學計數法(大寫)</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%u = %u"</span> <span class="token punctuation">,</span> <span class="token variable">$num1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// 不帶符號的十進制數(正)</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%u = %u"</span> <span class="token punctuation">,</span> <span class="token variable">$num2</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// 不帶符號的十進制數(負)</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%f = %f"</span> <span class="token punctuation">,</span> <span class="token variable">$num1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// 浮點數(視本地設置)</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%F = %F"</span> <span class="token punctuation">,</span> <span class="token variable">$num1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// 浮點數(不視本地設置)</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%g = %g"</span> <span class="token punctuation">,</span> <span class="token variable">$num1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// 短於%e 和%f</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%G = %G"</span> <span class="token punctuation">,</span> <span class="token variable">$num1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// 短於%E 和%f</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%o = %o"</span> <span class="token punctuation">,</span> <span class="token variable">$num1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// 八進制數</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%s = %s"</span> <span class="token punctuation">,</span> <span class="token variable">$num1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// 字符串</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%x = %x"</span> <span class="token punctuation">,</span> <span class="token variable">$num1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// 十六進制數(小寫)</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%X = %X"</span> <span class="token punctuation">,</span> <span class="token variable">$num1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// 十六進制數(大寫)</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%+d = %+d"</span> <span class="token punctuation">,</span> <span class="token variable">$num1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// 符號說明符(正)</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"%%+d = %+d"</span> <span class="token punctuation">,</span> <span class="token variable">$num2</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// 符號說明符(負)</span>
<span class="token delimiter important">?></span></span>

親自試一試

例子5

對字符串說明符的演示:

 <span class="token php language-php"><span class="token delimiter important"><?php</span>
<span class="token variable">$str1</span> <span class="token operator">=</span> <span class="token string double-quoted-string">"Hello"</span> <span class="token punctuation">;</span>
<span class="token variable">$str2</span> <span class="token operator">=</span> <span class="token string double-quoted-string">"Hello world!"</span> <span class="token punctuation">;</span>

<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"[%s]"</span> <span class="token punctuation">,</span> <span class="token variable">$str1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"[%8s]"</span> <span class="token punctuation">,</span> <span class="token variable">$str1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"[%-8s]"</span> <span class="token punctuation">,</span> <span class="token variable">$str1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"[%08s]"</span> <span class="token punctuation">,</span> <span class="token variable">$str1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"[%&#39;*8s]"</span> <span class="token punctuation">,</span> <span class="token variable">$str1</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span>
<span class="token keyword">echo</span> <span class="token function">sprintf</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"[%8.8s]"</span> <span class="token punctuation">,</span> <span class="token variable">$str2</span> <span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span>
<span class="token delimiter important">?></span></span>

親自試一試

同類函數
  • 輸出格式化的字符串 printf

    printf

    輸出格式化的字符串
  • 隨機打亂一個字符串 str_shuffle

    str_shuffle

    隨機打亂一個字符串
  • 判斷一個字符串中是否包含一個給定的子字符串 str_contains

    str_contains

    判斷一個字符串中是否包含一個給定的子字符
  • 計算一個字符串的crc32 多項式 crc32

    crc32

    計算一個字符串的crc32多項式
  • 將字符由一種Cyrillic 字符轉換成另一種 convert_cyr_string

    convert_cyr_string

    將字符由一種Cyrillic字符轉換成另
  • 將數字格式化成貨幣字符串 money_format

    money_format

    將數字格式化成貨幣字符串
  • 獲取不匹配遮罩的起始子字符串的長度 strcspn

    strcspn

    獲取不匹配遮罩的起始子字符串的長度
  • 二進制安全不區分大小寫的字符串比較 strcasecmp

    strcasecmp

    二進制安全不區分大小寫的字符串比較