WEB开发网
开发学院WEB开发PHP PHP中echo(),print(),print_r()的区别 阅读

PHP中echo(),print(),print_r()的区别

 2012-10-23 17:38:35 来源:WEB开发网   
核心提示: echo ,print的区别在于echo 可以输出多个变量值,而print只有一个变量,做为一个字符串输出. 另一点区别在于echo 没有返回值,print有返回值1.print不能输出数组和对象,PHP中echo(),print(),print_r()的区别,print_r可以输出stirng、int、float、

 echo ,print的区别在于echo 可以输出多个变量值,而print只有一个变量,做为一个字符串输出. 另一点区别在于echo 没有返回值,print有返回值1.print不能输出数组和对象。


print_r可以输出stirng、int、float、array、object等,输出array时会用结构表示,print_r输出成功时返回true;
而且print_r可以通过print_r($str,true)来使print_r不输出而返回 print_r处理后的值。

可以理解为:
print 是打印字符串

print_r 则是打印复合类型 如数组 对象等

PHP中的执行速率从快到慢为:echo(), print(), print_r()

echo是PHP语句, print和print_r是函数,语句没有返回值,函数可以有返回值(即便没有用)

print() 只能打印出简单类型变量的值(如int,string)
print_r() 可以打印出复杂类型变量的值(如数组,对象)


echo 输出一个或者多个字符串
echo -- 输出一个或者多个字符串

Descrīption
void echo ( string arg1 [, string ...] ) //返回值为空

echo "你好"," 朋友";
print --输出一个字符串

Descrīption
int print ( string arg )//返回值为整形
print "你好朋友";

可以进行下面操作
$name=print "nihao \n";
$str = 'test print value is $name .';
eval_r("\$print=\"$str\";");
echo $print;

print_r -- 打印关于变量的易于理解的信息。


bool print_r ( mixed expression [, bool return] ) //返回值是布尔型的,参数是mix类型的,可以是字符串,整形,数组,对象类print_r() 显示关于一个变量的易于理解的信息。如果给出的是 string、integer 或 float,将打印变量值本身。如果给出的是 array,将会按照一定格式显示键和元素。object 与数组类似。


print_r() 将把数组的指针移到最后边。


你可以
print_r(str);
print_r(int);
print_r(array);
print_r(obj);
也 可以用var_dump, var_export


echo()
可以同时输出多个字符串,可以多个参数,并不需要圆括号,无返回值。

print()
只可以同时输出一个字符串,一个参数,需要圆括号,有返回值,当其执行失败时返false . print 的用法和C语言很像,所以会对输出内容里的%做特殊解释。
$a=print('hi');
echo $a;
//----------------------------
hi 1 //1是$a的值。
//-----------------------------


die(); // 和exit()区别。
有两个功能:先输出内容,然后退出程序。(常用在链接服务器,数据库)
mysql_connect("locahost","root","root") or die("链接服务器失败!");


printf(); //f指format格式化
printf("参数1",参数2):参数1=按什么格式输出;参数2=输出的变量。(%s:按字符串;%d: 按整型;%b:按二进制;%x:按16进制;%X:按16进制大写输出;%o:按八进制; %f:按浮点型)
对于参数1,其格式如下:
%[ 'padding_character][-][width][.precision]type


说明:
所有转换都以%开头,如果想打印一个%,则必须用“%%”;
参数padding_character是可选的,用来填充变量直至指定的宽度,如:printf ("$%'a10.2f" , 43.2); //$aaaaa43.20,默认是填充一个空格,如果指定了一个空格或0就不需要使用“'”做为前缀。对于任何其它前缀则必须指定单引号。

1 2  下一页

Tags:PHP echo print

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接