php中echo、print、print_r、printf、sprintf、var_dump用法介绍
文章介绍了echo、print、print_r、printf、sprintf、var_dump,有需要了解的朋友可参考一下.
一、echo
定义和用法
PHP echo() 函数输出一个或多个字符串.
echo "" 这种方法也可以,不需要括号都行
语法
echo(strings)
参数 描述
strings 必需.一个或多个要发送到输出的字符串.
提示和注释
注释.echo() 实际上不是一个函数,因此您无需对其使用括号.不过,如果您希望向 echo() 传递一个或多个参数,那么使用括号会发生解析错误.
提示.echo() 函数比 print() 函数快一点点.
提示.echo() 函数可以使用简化语法.参见例子 5.
实例代码如下:
<?php $str = "Who's John Adams?"; echo $str; echo "<br />"; echo $str . "<br />I don't know!"; ?>
输出.
Who's John Adam? Who's John Adam? I don't know!
例子 2
<?php echo "This text spans multiple lines."; ?>
输出.
This text spans multiple lines.
例子 3
<?php echo 'This ', 'string ', 'was ', 'made ', 'with multiple parameters'; ?>
输出.
This string was made with multiple parameters
例子 4
单引号和双引号的不同之处.单引号仅输出变量名,而不是值.
<?php $color = "red"; echo "Roses are $color"; echo "<br />"; echo 'Roses are $color'; ?>
输出.
Roses are red Roses are $color
例子 5
简化语法.
<html> <body> <?php $color = "red"; ?> <p>Roses are <?php echo $color ?></p> </body> </html>
二、print
print() 和 echo() 用法一样,但是echo速度会比print快一点点.实际上它也不是一个函数,因此您无需对其使用括号.不过,如果您希望向print() 传递一个以上的参数,那么使用括号会发生解析错误.注意print总是返回1的,这个和echo不一样,也就是可以使用print来赋值,不过没有实际意义.
例子.
实例代码如下:
<?php $a = print ("55nav"); // 这个是允许的 echo $a; // $a的值是1 ?>
三、print_r 函数
print_r函数打印关于变量的易于理解的信息.
语法.mixed print_r ( mixed $expression [, bool return ] )
如果变量是string , integer or float , 将会直接输出其值,如果变量是一个数组,则会输出一个格式化后的数组,便于阅读,也就是有key和value对应的那种格式.对于object对象类同.print_r有两个参数,第一个是变量,第二个可设为true,如果设为true,则会返回字符串,否则返回布尔值TRUE.
实例代码如下:
<?php $a = "55nav"; $c = print_r($a); echo $c; // $c的值是TRUE $c = print_r($a, ture); echo $c; // $c的值是字符串55nav ?>
四、printf函数
printf函数返回一个格式化后的字符串.
语法.printf(format,arg1,arg2,arg++)
参数 format 是转换的格式,以百分比符号 ("%") 开始到转换字符结束.下面是可能的 format 值.
* %% - 返回百分比符号 * %b - 二进制数 * %c - 依照 ASCII 值的字符 * %d - 带符号十进制数 * %e - 可续计数法(比如 1.5e+3) * %u - 无符号十进制数 * %f - 浮点数(local settings aware) * %F - 浮点数(not local settings aware) * %o - 八进制数 * %s - 字符串 * %x - 十六进制数(小写字母) * %X - 十六进制数(大写字母)
arg1, arg2, arg++ 等参数将插入到主字符串中的百分号 (%) 符号处.该函数是逐步执行的,在第一个 % 符号中,插入 arg1,在第二个 % 符号处,插入 arg2,依此类推.如果 % 符号多于 arg 参数,则您必须使用占位符.占位符被插入 % 符号之后,由数字和 "$" 组成.可使用数字指定显示的参数,详情请看例子.
实例代码如下:
<?php printf("My name is %s %s.", "55nav", "com"); // My name is 55nav com. printf("My name is %1$s %1$s", "55nav", "com"); // 在s前添加1$或2$.....表示后面的参数显示的位置,此行输出 My name is Ricky Ricky因为只显示第一个参数两次. printf("My name is %2$s %1$s", "55nav", "com"); // My name is com 55nav ?>
五、function/43020.htm target=_blank >sprintf函数
参数 format 是转换的格式,以百分比符号 ("%") 开始到转换字符结束.下面的可能的 format 值.
%% - 返回百分比符号 %b - 二进制数 %c - 依照 ASCII 值的字符 %d - 带符号十进制数 %e - 科学计数法(比如 1.5e+3) %u - 无符号十进制数 %f - 浮点数(local settings aware) %F - 浮点数(not local settings aware) %o - 八进制数 %s - 字符串 %x - 十六进制数(小写字母) %X - 十六进制数(大写字母)
arg1, arg2, ++ 等参数将插入到主字符串中的百分号 (%) 符号处.该函数是逐步执行的.在第一个 % 符号中,插入 arg1,在第二个 % 符号处,插入 arg2,依此类推.
提示和注释
注释.如果 % 符号多于 arg 参数,则您必须使用占位符.占位符插到 % 符号后面,由数字和 "$" 组成.请参见例子 3.
提示. 相关函数. fprintf()、 printf()、 vfprintf()、 vprintf() 以及 vsprintf().
实例代码如下:
<?php $str = "Hello"; $number = 123; $txt = sprintf("%s world. Day number %u", $str, $number); echo $txt; ?>
输出.
Hello world. Day number 123
<?php $number = 123; $txt = sprintf("%f", $number); echo $txt; ?>
输出.
123.000000
<?php $number = 123; $txt = sprintf("With 2 decimals. %1$.2f<br />With no decimals. %1$u", $number); echo $txt; ?>
输出.
With 2 decimals. 123.00 With no decimals. 123
PHP String 函数
六、var_dump函数
var_dump (PHP 3 >= 3.0.5, PHP 4, PHP 5)
var_dump -- 打印变量的相关信息
void var_dump ( mixed expression [, mixed expression [, ...]] )
此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值.数组将递归展开值,通过缩进显示其结构.
提示. 为了防止程序直接将结果输出到浏览器,可以使用输出控制函数(output-control functions)来捕获此函数的输出,并把它们保存到一个例如 string 类型的变量中.
可以比较一下 var_dump() 与 print_r().
实例代码如下:
<pre> <?php $a = array( 1, 2, array( "a", "b", "c" ) ); var_dump($a); /* 输出. array(3) { [0]=> int(1) [1]=> int(2) [2]=> array(3) { [0]=> string(1) "a" [1]=> string(1) "b" [2]=> string(1) "c" } } */ $b = 3.1; $c = TRUE; var_dump($b, $c); /* 输出. float(3.1) bool(true) */ ?> </pre>
教程链接:http://www.phprm.com/develop/fs2483.html
随意转载~但请保留教程地址★