当前位置:编程问答 > php >

自学php笔记echo print printf() sprintf()区别

printf sprintf的区别,
当然,即便是最简单的Web网站都会想浏览器输出数据,PHP也提供了一系列输出信息的方法。
1.print()语法
Print()语句把传入它的数据输出到浏览器。其形式为:
 int print(argument)
以下都是print()语句:
 <?php
print("<p>I Love the sumertime.</p>");
?>
<?php
$season="summertime";
print"I love the $season.";
?>
这些语句都可以生成同样的输出结果:
 I love the summertime
注解:虽然正式语法要求使用括号把参数括起来,但也可以省略括号。许多程序倾向于省略括号,因为即使没有括号目标参数也同样很清晰。
或者也可以使用echo()语句达到与print()同样的目的。尽管理论上echo()和print()之间存在一些差别,但对大多数读者来说,这些差 别并不重要,所以这里不再讨论。echo ( )的形式如下:
 void echo(string argumentl[,… string argumentN])
从其形式可以看到,echo()能够输出多个字符串。这个特性的使用存在一些问题,有人使用这个特性更多的是出于个人偏好,而不是其他原因。不过,如果你 觉得确实有必要,也完全可以使用echo 的这个特性。下面给出一个例子:
 
这些代码会生成以下输出:
 Lennox Lewis and Floyd Mayweather are great fighters.
如果你打算输出由静态文本和通过变量传入的形态信息混合而成的内容,那么可以考虑使用printf()。否则只能希望输出静态文本,那么echo和 print都适用。
提示:echo()和print()相比,哪一个更快一些?这两个函数在功能上可以互换,正是因为这一点使得很多人都产生了这样一个疑问.答案是echo ( )函数稍稍快一点,因为它什么都不返回,而print() 不同,如果这个语句成功地输出,它会返回1 。不过,你可能很难注意到速度的这种细微差别,所以可以认为,决定使用哪一个函数时,这只是一个编程风格方面的问题。
2.printf()语句
如果你想输出由静态文本和一个或多个变量中存储的动态信息组成的混合产物,那么printf()语句再理想不过了。之所以说它很理想,有两个原因。首先, 它将静态数据和动态数据清晰地分至两个不同的部分,从而可以轻松地维护。其次,通过printf() ,我们有充分的控制权来决定如何将动态信息显示到屏幕上,包括其类型、精度、对齐方式和位置。其形式如下:
 boolean printf(string format [,mixed args])
例如,假设你希望将单个动态整数值插入到一个原本静态的字符串中:
 printf("Barinventory:%d bottles of tonic water.",100);
执行这个命令会生成以下输出;
 Barinventory:100 bottles of tonic water.
3.sprintf()函数
    Spintf()函数的功能与printf()相同,但他将输出指派到字符串,而不是直接指派到浏览器。其形式如下:
 string sprintf(string format [,mixed arguments])

实例如下:
 $cost=sprintf(“$%.2f”,43.2); //$cost=$43.20

============================================================================

PHP输出语句用法-echo print() printf() sprintf的区别

echo、print与printf都可以用来输出字符串到网页上。echo与print输出的是没有格式化的字符串,printf则是输出格式化的字符串。sprintf并不是直接输出字符串到网页上,而是返回格式化的字符串。

echo例子:echo Hello World!;

print例子:print Hello World!;

printf函数语法如下:

void printf (格式化的字符串 [,混合参数])

sprintf函数语法如下:

string sprintf (格式化的字符串 [,混合参数])

如果你只想输出静态文件,那么echo()和print()都可以,但是据说echo()在效率上快些,因为它什么也不返回,但print()则不同,如果成功输出,则会返回1;但是如果你想把一个动态数据推入到一个原本是静态的文本中,则你得使用printf().sprintf()函数与printf()相同,但它将输出放入到一个字符串中,而不是直接输出到浏览器.

如 $str=sprintf($%.2f,46.8) //$str=$46.8

关于printf()

前面说到如果你想把一个动态数据推入到一个原本是静态的文本中,这是什么意思呢?

实例说明一切:

printf(Bar inventory:%d bottles of tonic water.,200) //Bar inventory:100 bottles of tonic water.

其中%d是一个占位符,告诉程序这将用一个类型为整形的变量来替代(后面的200).占位符列表如下:

PHP输出语句用法-echo <wbr>print() <wbr>printf() sprintf的区别

当然如果后面的200是一个小数,则会取最接近的整数.

返回PHP教程,学习更多PHP知识。

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,