echo 和 print 的区别

PHP中echo和print 的功能基本相同(输出 ),但是两者之间还是有细微差别的。

1、返回值

echo输出后没有返回值。

print有返回值,当其执行失败时返回flase。

因此print可以作为一个普通函数来使用,这意味着print可用在一些复杂的表达式中,而echo则不行。但是,因为echo语句不要求返回任何数值,所已在代码中echo语句的运行效率要略微快于print语句。

2、输出字符串

echo 可以同时输出多个字符串。

echo $test1 . 'and' .$test2;

print()只能输出一个字符串。需要括号括起。print()用法会对输出内容的%做特殊处理。

print()和print没有太大区别一个是函数,一个是命令。

print($test);

print可以输出大段的HTML,而且不用把里面的引号转义。

<?
print <<<dND
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body>
</body>
</html>
dND
?>

print只有一个参数,print有:ture,1;false,0。

3、区别细节:

  echo命令和print命令相同,没有区别 ;

  echo函数和print 函数有区别;

  print()有返回值,当其执行失败(比如断线)时返回flase;

  printf()和sprintf()类似,均为格式化输出,不同的是前者输出到标准输出,后者输出到变量。

  在同一页面中使用<<<标记,标记名为配对出现,同一页面中不允许同名出现两个以上标记名。配对标记名的结尾标记名应单独一行,前后均不允许输出字符(例如空格等不可见但存在的字符)。

  例如下面的书写格式:

  echo <<< EOT 

  EOT; 

  print <<< EOT 

  EOT; 

  其含义如下: 

  <<<:运算符,将由自定义分界符间的内容视为字符串,可对其间的变量做处理;EOT:自定义分界符,结束时必须位于行首。

 

另:sprintf()函数的功能与printf()相同,但它将输出指派到字符串,而不是直接指派到浏览器。其形式如下:

string sprintf(string format [, mixed arguments])

示例如下:

$cost = sprintf("$%.2f", 43.2);// cost = $43.20
posted @ 2012-06-18 16:23  cindylu520  阅读(567)  评论(0编辑  收藏  举报