【函数功能】
函数把格式化的字符串写入指定的输出流(例如:文件等)。
【函数语法】
fprintf ($handle, $format, $args = null, $_ = null)
【参数说明】
$handle:必需:在何处写入/输出字符串。
$format:必需:字符串以及如何格式化其中的变量。
变量可能的格式值:
%% - 返回一个百分号 %
%b - 二进制数
%c - ASCII 值对应的字符
%d - 包含正负号的十进制数(负数、0、正数)
%e - 使用小写的科学计数法(例如 1.2e+2)
%E - 使用大写的科学计数法(例如 1.2E+2)
%u - 不包含正负号的十进制数(大于等于 0)
%f - 浮点数(本地设置)
%F - 浮点数(非本地设置)
%g - 较短的 %e 和 %f
%G - 较短的 %E 和 %f
%o - 八进制数
%s - 字符串
%x - 十六进制数(小写字母)
%X - 十六进制数(大写字母)
附加的格式值。必需放置在 % 和字母之间(例如 %.2f):
+ (在数字前面加上 + 或 - 来定义数字的正负性。
默认地,只有负数才做标记,正数不做标记)
' (规定使用什么作为填充,默认是空格。它必须与宽度指定器一起使用。
例如:%'x20s(使用 "x" 作为填充))
- (左调整变量值)
[0-9] (规定变量值的最小宽度)
.[0-9] (规定小数位数或最大字符串长度)
注释:如果使用多个额外的格式值,则必须按照上面的顺序进行使用。
$args:必需,插到 format 字符串中第一个 % 符号处的参数。
$_:可选。规定插到 format 字符串中第N个 % 符号处的参数。
【演示程序】
<?php
/**
* fprintf ($handle, $format, $args = null, $_ = null)
* **/
$filename = "test.txt";
$handle = fopen($filename, "w");
$format = "test fprintf function:100%% useful,%b binary,%c ASCII,%d number,%e big number,%.2f float,%'x20s";
echo fprintf($handle, $format,100,98,1234,99999999999,-10,"and so on!");
fclose($handle);
?>
【输出结果】
126
文件内容如下:
test fprintf function:100% useful,1100100 binary,b ASCII,1234 number,1.000000e+11 big number,-10.00 float,xxxxxxxxxxand so on!
【特别注意】
1.arg1、arg2、arg++ 参数将被插入主字符串中的百分号(%)符号处。该函数是逐步执行的。在第一个 % 符号处,插入 arg1,在第二个 % 符号处,插入 arg2,依此类推。
2.如果 % 符号多于 arg 参数,则您必须使用占位符。占位符被插入到 % 符号后面,由数字和 "\$" 组成。
3.PHP 版本:5+。
【原版定义】
/**
* Write a formatted string to a stream
* @link http://www.php.net/manual/en/function.fprintf.php
* @param handle resource &fs.file.pointer;
* @param format string <p>
* See sprintf for a description of
* format.
* </p>
* @param args mixed[optional] <p>
* </p>
* @param _ mixed[optional]
* @return int the length of the string written.
*/
转载请注明出处:php1234.cn ,原文地址:http://www.php1234.cn/a/functions/2016/1107/117.html