vprintf() 是 PHP 的內置字符串函數。它用於根據格式將數組值顯示為格式化字符串。這個函數的主要目的是顯示一個格式化的字符串。 PHP 4 及以上版本支持 vprintf() 字符串函數。
vprintf() 函數的工作方式與 printf() 函數類似,但它接受一組參數。這些數組元素與百分號 (%) 一起插入到主字符串中。 vprintf() 函數作用於 step-by-step。在每個 % 符號處插入元素。執行成功後返回輸出字符串的長度。
注意:如果 % 符號比函數中傳遞的參數多,那麽我們必須使用占位符。占位符始終插入在 % 符號之後,並包含諸如 - number 和 "$" 之類的參數。
與 vfprintf() 函數不同,它不包含 $stream 參數來說明在哪裏寫入字符串。
相關函數
vfprintf(),
vsprintf(),
printf(), 是一些與 vprintf() 類似的函數。
用法
下麵給出了 vprintf() 的語法,其中兩個參數都是必須傳入此函數的。
vprintf( $format, $array_arg)
參數
$format (required) - 它是 vprintf() 函數的強製參數,它指定如何格式化字符串。
可能的格式值:
- %% - 它返回一個百分比符號
- %b - 表示為二進製數
- %c - 根據 ASCII 值顯示字符。
- %d - 表示為有符號十進製數。
- %e - 參數被視為使用小寫字母的科學記數法(例如 3.2e+2)
- %E - 類似於 e 說明符,但使用大寫(例如 3.2E+2)
- %u - 無符號十進製數
- %f - 表示為浮點數(語言環境感知)
- %F - 也表示為浮點數,但不知道區域設置
- %g - %e 和 %f 中較短的一個
- %G - %E 和 %F 中的較短者
- %o - 表示為八進製數
- %s - 處理並表示為字符串
- %x - 表示為帶有小寫字母的十六進製數
- %X - 表示為十六進製數字,但使用大寫字母
其他格式值:
這些值位於 % 符號和字母之間,例如 %.2f
- + = 前綴 + 和 - 符號,默認情況下隻有負數用 -ive 符號標記。
- - = Left-justify 給定變量值內,默認為右對齊。
- ' = 用字符填充結果。
- (space) = 用空格填充結果。
- 0 = 僅 left-pads 數字為零。使用 s 說明符,它也可以 right-pads 帶零。
注意:如果使用多個附加格式值,則它們的順序必須與上述相同。
$array_arg (required) - 這些是需要格式化的數組參數。數組中的參數將插入格式字符串中的 % 符號處。
返回值
$array_arg(必需) vprintf() 函數返回輸出字符串的長度。
例子
下麵是示例列表,我們可以通過這些示例了解 vprintf() 函數的工作方式。
例子1
在下麵的示例中,我們將在寫入模式("w")下打開一個 test.txt 文件以在其中寫入一些數據。如果 test.txt 文件不存在,它會自動在同一文件夾中創建該文件,然後我們就可以在其中寫入文本了。
?php
$days =365;
$yr = "year.";
vprintf("There are %u days in 1 %s", array($days, $yr));
?>
輸出:
與 vprintf() 不同,它直接在瀏覽器上顯示字符串數據,而不是在文件中。
There are 365 days in 1 year.
示例 2:占位符的使用
<?php
$num1 =12.35;
vprintf("With two decimal point:%1\$.2f </br>
With three decimal point:%1\$.3f </br>
With no decimal:%1\$u", array($num1));
?>
輸出:
在上麵的例子中,我們在這裏使用了占位符,因為 % 比函數中傳遞的參數多。
With two decimal point:12.35 With three decimal point:12.350 With no decimal:12
下麵的數據將寫入 test.txt 文件中。
512.000000 18446744073709551370
相關用法
- PHP String vsprintf()用法及代碼示例
- PHP String vfprintf()用法及代碼示例
- PHP String wordwrap()用法及代碼示例
- PHP String sprintf()用法及代碼示例
- PHP String ucwords()用法及代碼示例
- PHP String substr()用法及代碼示例
- PHP String localeconv()用法及代碼示例
- PHP String quoted_printable_encode()用法及代碼示例
- PHP String ucfirst()用法及代碼示例
- PHP String nl2br()用法及代碼示例
- PHP String strtr()用法及代碼示例
- PHP String strtolower()用法及代碼示例
- PHP String strspn()用法及代碼示例
- PHP String substr_count()用法及代碼示例
- PHP String strtoupper()用法及代碼示例
- PHP String quoted_printable_decode()用法及代碼示例
- PHP String nl_langinfo()用法及代碼示例
- PHP String strtok()用法及代碼示例
- PHP String substr_replace()用法及代碼示例
- PHP String strstr()用法及代碼示例
注:本文由純淨天空篩選整理自 PHP String vprintf() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。