2 回答
TA贡献2080条经验 获得超4个赞
print,print_r,printf,sprintf,die,echo,var_dump,var_export 区别
1 echo()
可以同时输出多个字符串,可以多个参数,并不需要圆括号,无返回值。
2 print()
只可以同时输出一个字符串,一个参数,需要圆括号,有返回值,当其执行失败时返flase . print 的用法和C语言很像,所以会对输出内容里的%做特殊解释。 $a=print('hi'); echo $a;
//---------------------------- hi 1 //1是$a的值。 //-----------------------------
3 die(); // 和exit()区别。
有两个功能:先输出内容,然后退出程序。(常用在链接服务器,数据库) mysql_connect("locahost","root","root") or die("链接服务器失败!");
4 printf(); //f指format格式化
printf("参数1",参数2):参数1=按什么 格式输出;参数2=输出的变量。(%s:按字符串;%d:按整型;%b: 按二进制;%x:按16进制;%X:按16进制大写输出;%o:按八进制;%f: 按浮点型) 函数,返回输出字符个数,把文字格式化以后输出,如: printf ("$%01.2f" , 43.2); //$43.20 $表示填充的字符
0表示位数不够在不影响原值的情况下补0 1表示输出的总宽度
2 表示小数位数,有四舍五入 %f 是表示显示为一个浮点数 格式化命令及说明:
%% 印出百分比符号,不转换。 %b 整数转成二进位。
%c 整数转成对应的 ASCII 字符。 %d 整数转成十进位。
%f 倍精确度数字转成浮点数。 %o 整数转成八进位。 %s 整数转成字符串。
%x 整数转成小写十六进位。 %X 整数转成大写十六进位
<?php
$num=100.001;
printf("%d",$num); //100
printf("%s",$num); //100.001 printf("%s---%d---%b---%x---%o---%f",$num,$num,$num,$num,$num,$num) //100.001---100---1100100---64---144---1001.00100 printf("%.2f",$num); //100.00 (小数点保留2位)
printf("%.1f",$num); //100.0 (小数点保留1位)
printf("%`#10s",$num); // #10s printf("%#10s",$num); //10s ?>
5 sprintf();
此并不能直接输出,先赋给一个变量,然后再输出变量。 <?php
$num=100.001; $a=sprintf("%d",$num); echo $a; //100
?>
6 print_r();
功能:只用于输出数组。
$a = array (1, 2, array ("a", "b", "c")); print_r ($a);
返回:
Array ( [0] => 1 [1] => 2 [2] => Array ( [0] => a [1] => b [2] => c ) )
7 var_dump();
功能: 输出变量的内 容,类型或字符串的内容,类型,长度。常用来调试。 <?php $a=100;
var_dump($a); //int(100)
$a=100.356;
var_dump($a); //float(100.356) ?>
8.var_export ();
返回关于传递给该函数的变量的结构信息,它和 var_dump() 类 似,不同的是其返回的表示是合法的 PHP 代码。
您可以通过将函数的第二个参数设置为 TRUE,
从而返回变量的值。
<?php
$a = array (1, 2, array ("a", "b", "c")); var_export ($a); /* 输出: array ( 0 => 1, 1 => 2,
2 => array (
0 => 'a', 1 => 'b', 2 => 'c', ), ) */
$b = 3.1;
$v = var_export($b, TRUE); echo $v; /* 输出: 3.1 */ ?>
- 2 回答
- 0 关注
- 280 浏览
添加回答
举报