php中print、printf、sprintf的区别?

时间:2021-12-27 07:30:50

返回结果不同:

print —— 输出字符串
printf —— 返回值为输出字符串的长度,按照format格式参数直接输出字符串
sprintf —— 返回值为按照format格式参数格式化的字符串,不直接输出结果

说明:

int print ( string $arg )
参数:arg (需要输出的字符串)
返回:整形1
输出:字符串

print 实际上不是函数(而是语言结构),所以可以不用圆括号包围参数列表。
和 echo的区别仅是:print仅支持一个参数,并总是返回1。

int printf ( string f o r m a t [ , m i x e d args [, mixed $… ]] )
参数: format(描述信息) args (需要格式化的参数)
返回 :输出字符串的长度
输出:输出根据format参数格式化的字符串

实例1$num = 2.12; 
printf("%.1f",$num); 
prints: 
2.1 

实例2$goodevil = array('good', 'evil'); 
printf_array('There is a difference between %s and %s', $goodevil); 
?> 
and it will print: 
There is a difference between good and evil

string sprintf ( string f o r m a t [ , m i x e d args [, mixed $… ]] )
参数:format(格式化描述信息) args (需要格式化的参数)
返回:返回值为根据format格式化的字符串
输出:无输出

实例及format参数说明参考网址:http://www.w3school.com.cn/php/func_string_sprintf.asp