echo和printf有什么区别

时间:2013-03-02 22:27:23

标签: php printf echo

echo和printf有什么区别?

2 个答案:

答案 0 :(得分:7)

主要区别在于printf首先接收一个格式字符串,带有占位符(您看到的那些%符号),甚至可以接受一些格式化参数(例如%2d,它会显示一个数字的2位数)。

相反,Echo只显示字符串。当您执行“$ i bar”时,首先使用$ i的值展开字符串,然后将其发送到要显示的echo函数。

答案 1 :(得分:4)

如果您搜索任何搜索引擎中的差异,您将得到答案。例如,下面是printf的一个用途:

您可以使用此功能格式化数字中的小数位:

$num = 2.12; 
printf("%.1f",$num); 

prints: 

2.1 

当然这只是一次使用。我使用的另一个好样本如下:

如果要以“pre”标签,courier字体或其他非可变长度字体(如终端)打印数据,则可以使用printf的对齐功能。     

$value1 = "31298";
$value2 = "98";

print "<pre>\n";
printf ("%'.-15.15s%'.6.6s\n", $heading1, $value1);
printf ("%'.-15.15s%'.6.6s\n", $heading2, $value2);
print "</pre>\n";
?>

还有很多其他用法。