Home  >  Article  >  Backend Development  >  PHP中几种输出函数的差别

PHP中几种输出函数的差别

WBOY
WBOYOriginal
2016-06-13 10:38:28904browse

PHP中几种输出函数的区别

?

echo返回值是void,可以一次输出多个值,多个值之间用逗号分隔。echo是语言结构(language construct)也就是关键字,而并不是真正的函数,因此不能作为表达式的一部分使用。使用的时候不用加括号,加上也可以。只支持基本类型,布尔型除外,echo true的时候显示1echo false的时候啥都没有。echo不可以输出数组类型;

print返回值是int,只可以同时输出一个字符串,一个参数,还需要圆括号,不支持逗号分隔多个显示变量的语法有返回值;当执行失败时返回flaseprint的用法和C语言相似,所以会对输出内容的%做特殊解释。print能输出数组类型的数据;

print_r不仅可以打印变量的的值,还能显示变量类型,而且也可以显示数组和对象这样复杂的变量类型。print_r() 将把数组的指针移到最后边。使用reset()可让指针回到开始处,print_r()可以把字符串和数字简单地打印出来,而数组则以括起来的键和值得列表形式显示,并以Array开头;

printf源于C语言中的printf()。该函数输出格式化的字符串。语法:printf("参数1",参数2):参数1=按什么格式输出;参数2=输出的变量。(%s:按字符串;%d: 按整型;%b:按二进制;%x:16进制;%X:按16进制 大写输出;%o:按八进制; %f:按浮点型)。占位符被插入%符号之后,由数字和"\$" 组成。f=format:规定字符串以及如何格式化其中的变量;如下:printf("$%01.2f",43.2); //$43.20$表示填充的字符;0表示位数不够在不影响原值的情况下补01表示输出的总宽度;%f则显示为一个浮点数;

sprintf此并不能直接输出,先赋给一个变量,然后再输出变量。如下:

   

<?php $num=100.001;$a=sprintf("%d",$num);echo $a; //100?>;

?

var_dumpvoid var_dump ( mixed expression [, mixed expression [, ...]] )功能:输出变量的内容,类型或字符串的内容,类型,长度。常用来调试。如下:

  

<?php $a=100;var_dump($a); //int(100) $a=100.356;var_dump($a); //float(100.356)?>;

?

var_exportmixed var_export ( mixed $expression [, bool $return ] )返回关于传递给该函数的变量的结构信息,它和var_dump()类似,不同的是其返回的表示是合法的PHP 代码。你可以通过将函数的第二个参数设置为TRUE,从而返回变量的值。如下:

  

<?php $a = array (1, 2, array ("a", "b", "c"));//没有定义TRUE的情况;var_export ($a);$b = 3.1;$v = var_export($b, TRUE);echo $v;?>

?

输出:array (0 => 1,1 => 2,2 => array (0 => 'a',1 => 'b',2 => 'c',),)3.1

总结:echoprintprintf可以打印变量内容,但不能显示数组及系统超级变量数组;print_rvar_dump不仅可以打印数组、标量变量,还可以打印对象的内容。

?

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn