Home > Article > Backend Development > Output string in PHP (echo, print, printf, print_r, var_dump) java printf printf d printf source code
In PHP, there are four ways to output strings. The echo structure can output multiple values at one time; print() can only output one value; printf() can format the output; print_r() can output an array, which is very beneficial for debugging.
1. echo
echo is a keyword in PHP, it has no return value. In terms of writing, it can omit the parentheses. The following code:
echo
'Test String';
echo('Test String');
2.
print
print
It is also a keyword in PHP. It has a return value. It usually returns true. There should be no cases where it returns false. In terms of writing, it is the same as echo, and the parentheses can be omitted. The following code:
print
'Test String';
print('Test String');
3.
printf
printf can format and output a string like printf in C language. Its format is similar to that of C language, both starting with %. Its specifier is defined below.
b The parameter is an integer, display its binary system
c The parameter is an integer, display the corresponding ASCII character
d The parameter is an integer, display its decimal system
f The parameter is double precision, display it as a floating point number
The e parameter is double precision, displayed as scientific notation
g The parameter is double precision, displayed as floating point number or scientific notation
o The parameter is an integer, displayed in octal
s The parameter is a string, displayed as String
u parameter is an unsigned integer, display its decimal
x/X parameter is an integer, display its hexadecimal (upper and lower case respectively)
%
What should be explained when outputting % is:
f, e default to six digits after the decimal point. When g exceeds six digits (plus decimal point), it will be rounded. If the rounded value is less than 1000000, it will be output directly. If it is greater than 1000000, it will be displayed. into scientific notation. When the value of f is greater than 1.2e23, the output result is incorrect.
Except for %, all of the above can specify the total number of output digits (the decimal point and E count as one), and you can specify 0 or a space as the filler character, and you can also specify whether the filler is on the left or right.
f, e can specify the number of digits after the decimal point.
For example, %5d means that the total number of output digits is 5, and the remaining digits are left filled with spaces; %05d means that the total number of output digits is 5, and the remaining digits are left filled with 0s; %05.1f means that the total number of output digits is 5, and the remaining digits are left filled with 0s. 1 digit after the decimal point; %-05.1f means that the total number of output digits is 5, any missing digits are padded to the right with 0, and 1 digit after the decimal point;
Sample code:
printf("%7.2f",
1.2); // " 1.20"
printf("%-07.2f", 1.2); // "1.20000"
4.
sprintf
sprintf and format conversion are the same as printf. The difference between the two is that printf outputs directly, while sprintf returns a formatted string.
5. print_r and var_dump
Both print_r and var_dump can output arrays and objects, but print_r’s output of Boolean types is not obvious; var_dump’s output is more detailed and is generally used during debugging.
The following code:
The code is as follows:
$v = new test();
print_r ($v);
var_dump($v);
class test {
public $num = 1;
public $str = "222";
public $bln = true;
The result is:
Copy the codeThe code is as follows:
test Object
(
[num] => 1
[str] => 222
[bool] => 1
)
object(test)#1 ( 3) {
["num"]=>
int(1)
["str"]=>
string(3) "222"
["bool"]=>
bool(true)
}
The above introduces the output strings (echo, print, printf, print_r, var_dump) in PHP, including printf content. I hope it will be helpful to friends who are interested in PHP tutorials.