7种php常用的打印输出函数,分别是echo,print,printf,sprintf,print_r,var_dump,die,希望对大家学习php能够有所帮助。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
开发就一定需要调试代码,而PHP调试代码不能像iOS那种编译器语言可以通过Xcode这样的开发软件来单步调试,因此开发PHP的人员通常会通过输出函数打印相关提示信息来调试代码。PHP中常用的打印输出的函数一步步讲解文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
echo文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
echo函数可以同时输出多个字符串,带多个参数,但并不要求使用圆括号,也没有返回值。但是,如果带上圆括号也没有问题的,因此函数本就需要圆括号的:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.htmlecho
'PHP中文网
';
echo
(
'echo也可以带括号
');
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
相信echo函数是使用最多的打印函数了吧!文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
print文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
print函数同时只能输出一个字符串,只能带一个参数,需要带圆括号而且会有返回值。当其执行失败时返flase。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.htmlprint
(
'www.php.cn
');
print函数使用也是相当多的,用于打印信息,不过没有echo那么方便,但它有它的用处!文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
printf文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
printf函数带有两个参数,第一个参数是指定输出格式,第二个参数是要输出的变量。输出格式为:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
%s: 按字符串;
%d: 按整型;
%b: 按二进制;
%x: 按16进制;
%o: 按八进制;
$f: 按浮点型文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html$var = 10;
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.htmlprintf('整型:%d
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
', $var);printf('浮点型:%.2f
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
', $var); // 保留两位小数printf('字符串:%s
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
', $var);printf('二进制:%b
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
', $var);printf('八进制:%o
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
', $var);printf('十六进制:%x
', $var);
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html// 打印结果
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html/*
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html整型:10
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html浮点型:10.00
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html字符串:10
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html二进制:1010
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html八进制:12
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html十六进制:a
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html*/
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
sprintf文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
sprintf不能直接输出变量值,而是直接将值读取给指定的变量:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html$ret
= sprintf(
'%.2f'
,
$var
);
echo
"结果:{$ret}
";
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
这个函数用于格式化变量输出是非常有用的,使用也很多!文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
print_r文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
print_r这个函数用于输出数组,带一个或者两个。如果参数二设置为YES,则不会输出表达式信息,而是直接return回来:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html$arr
=
array
(
'name'
=>
'PHP中文网'
,
'site'
=>
'www.php.cn'
);
print_r(
$arr
);
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.htmlecho
'
';
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html// 参数二设置为true则不会打印,而是直接返回
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html$arr1
= print_r(
$arr
, true);
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.htmlecho
"{$arr1}
";
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
var_dump文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
var_dump这个函数在调试过程中使用最多了吧,用于输出变量的内容、类型、字符串的内容,常用于开发中调试使用:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html// 当打印的是字符串,其中有对象时,打印出来是:
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html// string(20) "var_dump:Array
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.htmlvar_dump(
'var_dump:'
.
$arr
.
'
');
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html// 当只有对象本身时,打印出来如下:
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html// " array(2) { ["name"]=> string(21) "PHP中文网" ["site"]=> string(19) "www.php.cn" }
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.htmlvar_dump(
$arr
);
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
die文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
die函数使用也是很广泛的,在调试过程中,经常会中断下面的执行,它会先输出内容,然后退出程序或者不输出内容:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.htmlif
(!isset(
$type
)) {
die
(
'I am die!
');
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html}
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
总结:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html
以上函数都可以打印对象的值、系统函数值以及数组的内容; echo 、print、printf可以打印变量内容,但不能显示数组及系统超级变量数组;
print_r 和 var_dump不仅可以打印数组、标量变量,还可以打印对象的内容;
var_dump语句不仅能打印变量、数组内容,还可以显示布尔变量和资源(resource)的内容;
var_export 函数返回关于传递给该函数的变量的结构信息,和 var_dump()函数类似,不同的是其返回的内容是合法的php代码。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13980.html