程序员人生 网站导航

echo、print和print_r函数区别

栏目:php教程时间:2014-04-27 12:07:45

1.echo和print的区别

PHP中echo和print的功能基本相同(输出),但是两者之间还是有细微差别的。echo输出后没有返回值,但print有返回值,当其执行失败时返回flase。因此可以作为一个普通函数来使用,例如执行下面的代码后变量$r的值将为1。

$r = print "Hello World";

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

echo 没有返回值;print 有返回值,print 的返回值总是1。

2.表达式

print可以用于复杂的表达式,而 echo 不可以,比如 print 可以用于如下示例:

  1. <html><body><?php$a=true;$a ? print "true":print "false";?></body></html> 

3.参数

echo 可以有多个参数,而 print 只能有一个参数。

echo 如果有多个参数,应用逗号分隔,每个参数没有必要加小括号,正确写法如下:

  1. echo "good ","for ","you"

注意,如果 echo 有多个参数,只用一个小括号将所有参数围起来,是错误的写法。下面的写法是错误的:

  1. echo ("good ","for ","you"); 

print 只能有一个参数,比如:

  1. print ("good for you"); 
  2. print "good for you"

echo 和 print 的作用都是输出字符串。echo 和 print 之间主要的区别在于,echo 的速度比 print 快,因为 echo 没有返回值。

4.print_r()函数,只用于输出数组。

php 中 print_r 函数输出的数组内容不排列。为了让它输出的好看些。如,数组有多层。分段列出,我们可以这样写:

  1. <?php 
  2. $a = array ('a' => 'apple''b' => 'banana''c' => array ('x''y''z')); 
  3. print_r ($a); 
  4. ?> 
  5. </pre>  
  6. The above example will output: 
  7. <pre> 
  8. Array 
  9.     [a] => apple 
  10.     [b] => banana 
  11.     [c] => Array 
  12.         ( 
  13.             [0] => x 
  14.             [1] => y 
  15.             [2] => z 
  16.         ) 

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐