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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。