PHP fprintf()Functions
Examples
Write some text to a text file named "test.txt":
$number = 9;
$str = "Beijing";
$file = fopen("test.txt","w");
echo fprintf($file,"There are %u million bicycles in %s.",$number,$str);
?>
The code above will output:
The following text will be written to the file "test.txt":
Definition and Usage
The fprintf() function writes a formatted string to the specified output stream (for example: a file or database).
The arg1, arg2, ++ parameters will be inserted into the main string at the percent (%) sign. The function is executed step by step. At the first % sign, arg1 is inserted, at the second % sign, arg2 is inserted, and so on.
Note:If there are more % signs than arg parameters, you must use placeholders. The placeholder is inserted after the % sign and consists of a number and "\$". See Example 2.
Tip:Related functions:printf()、 sprintf()、 vprintf()、 vsprintf()andvfprintf()
Syntax
| Parameters | Description |
|---|---|
| stream | Required. Specifies where to write/output the string. |
| format | Required. Specifies the string and how to format the variables in it. Possible format values:
Additional format values. Must be placed between the % and the letter (e.g. %.2f):
Note:If multiple of the above format values are used, they must be used in the above order and cannot be rearranged. |
| arg1 | Required. Specifies the parameter to be inserted at the first % sign in the format string. |
| arg2 | Optional. Specifies the parameter to be inserted at the second % sign in the format string. |
| arg++ | Optional. Specifies the parameters to be inserted at the third, fourth, etc. % signs in the format string. |
Technical Details
| Return value: | Returns the length of the written string. |
|---|---|
| PHP version: | 5+ |
More Examples
Example 1
Write some text to a file:
$number = 123;
$file = fopen("test.txt","w");
fprintf($file,"%f",$number);
?>
The following text will be written to the file "test.txt":
Example 2
Using placeholders:
$number = 123;
$file = fopen("test.txt","w");
fprintf($file,"With 2 decimals: %1$.2f
nWith no decimals: %1$u",$number);
?>
The following text will be written to the file "test.txt":
With no decimals: 123
Example 3
Use printf() to demonstrate all possible format values:
$num1 = 123456789;
$num2 = -123456789;
$char = 50; // The ASCII Character 50 is 2
// Note: The format value "%%" returns a percent sign
printf("%%b = %b <br>",$num1); // Binary number
printf("%%c = %c <br>",$char); // The ASCII Character
printf("%%d = %d <br>",$num1); // Signed decimal number
printf("%%d = %d <br>",$num2); // Signed decimal number
printf("%%e = %e <br>",$num1); // Scientific notation (lowercase)
printf("%%E = %E <br>",$num1); // Scientific notation (uppercase)
printf("%%u = %u <br>",$num1); // Unsigned decimal number (positive)
printf("%%u = %u <br>",$num2); // Unsigned decimal number (negative)
printf("%%f = %f <br>",$num1); // Floating-point number (local settings aware)
printf("%%F = %F <br>",$num1); // Floating-point number (not local settings aware)
printf("%%g = %g <br>",$num1); // Shorter of %e and %f
printf("%%G = %G <br>",$num1); // Shorter of %E and %f
printf("%%o = %o <br>",$num1); // Octal number
printf("%%s = %s <br>",$num1); // String
printf("%%x = %x <br>",$num1); // Hexadecimal number (lowercase)
printf("%%X = %X <br>",$num1); // Hexadecimal number (uppercase)
printf("%%+d = %+d <br>",$num1); // Sign specifier (positive)
printf("%%+d = %+d <br>",$num2); // Sign specifier (negative)
?>
Run Example »
PHP String Reference Manual Other Extensions