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