首页 > 开发 > PHP > 正文

php echo, print, print_r, sprintf, var_dump, var_expor的使用区别

2024-05-04 22:25:46
字体:
来源:转载
供稿:网友

/*******echo********/
echo— 输出一个或多个字符串
描述
echo ( string arg1 [, string ...] )
echo()实际上不是一个函数(它是一个语言结构),所以您不需要使用括号。echo()的(不同于其他一些语言构造)并不像一个功能,所以它不能总是在函数中使用。此外,如果你想传递多个参数的echo(),参数必须不被括在括号内。
echo()是命令,不能返回值。echo后面可以跟很多个参数,之间用分号隔开,如:
echo $myvar1;
echo 1,2,$myvar,”bold”;

/*******print********/
print— 输出一个或多个字符串
描述
int print ( string arg )
print()是实际上没有一个真正的函数(它是一个语言结构),所以你并不需要使用它的参数列表的括号。
 可以返回一个值,只能有一个参数

/*******print_r()********/
 print_r
(PHP 4, PHP 5)
print_r –  打印关于变量的易于理解的信息。
描述
bool print_r ( mixed expression [, bool return] )
注: 参数 return 是在 PHP 4.3.0 的时候加上的
print_r() 显示关于一个变量的易于理解的信息。如果给出的是 string、integer 或 float,将打印变量值本身。如果给出的是 array,将会按照一定格式显示键和元素。object 与数组类似。
记住,print_r() 将把数组的指针移到最后边。使用 reset() 可让指针回到开始处。
<pre>
<?php
    $a = array (‘a' => ‘apple', ‘b' => ‘banana', ‘c' => array (‘x','y','z'));
    print_r ($a);
?>
</pre>
上边的代码将输出: <pre>
Array
(
    [a] => apple
    [b] => banana
    [c] => Array
        (
            [0] => x
            [1] => y
            [2] => z
        )
)
</pre>
如果想捕捉 print_r() 的输出,可使用 return 参数。若此参数设为 TRUE,print_r() 将不打印结果(此为默认动作),而是返回其输出。
例子 1. return 参数示例
<?php
    $b = array (‘m' => ‘monkey', ‘foo' => ‘bar', ‘x' => array (‘x', ‘y', ‘z'));
    $results = print_r ($b, true); //$results 包含了 print_r 的输出结果
?>

注: 如果想在 PHP 4.3.0 之前的版本中捕捉 print_r() 的输出,可使用输出控制函数。
注: 在 PHP 4.0.4 之前的版本中,如果给出的 array 或 object 包含了直接或间接指向自身的引用,print_r() 将永远继续下去。print_r($GLOBALS) 就是一个例子,因为 $GLOBALS 自身即是全局变量,其包含了指向自身的引用。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表