首页 后端开发 php教程 PHP echo,print,printf,sprintf函数之间的区别与用法详解_PHP教程

PHP echo,print,printf,sprintf函数之间的区别与用法详解_PHP教程

Jul 13, 2016 pm 05:17 PM
echo php print printf 函数 区别 用法 详解 输出

1. echo函数:

输出函数,是命令,不能返回值。echo后面可以跟很多个参数,之间用分号隔开,如:
echo $myvar1;
echo 1,2,$myvar,"bold";


2. print函数:

是函数,可以返回一个值,只能有一个参数。

int print ( string arg )

Outputs arg . Returns 1 , always.


3. printf函数:

int printf ( string format [, mixed args [, mixed ...]] )

Produces output according to format , which is described in the documentation for sprintf() .

Returns the length of the outputted string.


把文字格式化以后输出,如:
$name="hunte";
$age=25;
printf("my name is %s, age %d", $name, $age);


4. sprintf函数:
string sprintf ( string format [, mixed args [, mixed ...]] )

Returns a string produced according to the formatting string format .


跟printf相似,但不打印,而是返回格式化后的文字,其他的与printf一样。


5. 详细讲解printf()函数:

printf()函数的调用格式为:
printf("", );


%d 十进制有符号整数
%u 十进制无符号整数
%f 浮点数
%s 字符串
%c 单个字符
%p 指针的值
%e 指数形式的浮点数
%x, %X 无符号以十六进制表示的整数
%o 无符号以八进制表示的整数
%g 自动选择合适的表示法


说明:

(1). 可以在"%"和字母之间插进数字表示最大场宽。

 ①例如: %3d 表示输出3位整型数, 不够3位右对齐。

 ②%9.2f 表示输出场宽为9的浮点数, 其中小数位为2, 整数位为6, 小数点占一位, 不够9位右对齐。

 ③%8s 表示输出8个字符的字符串, 不够8个字符右对齐。

 ④如果字符串的长度、或整型数位数超过说明的场宽, 将按其实际长度输出。

 ⑤浮点数, 若整数部分位数超过了说明的整数位宽度, 将按实际整数位输出;

 ⑥小数部分位数超过了说明的小数位宽度, 则按说明的宽度以四舍五入输出。

 ⑦若想在输出值前加一些0, 就应在场宽项前加个0。

   例如: %04d 表示在输出一个小于4位的数值时, 将在前面补0使其总宽度为4位。

  ⑧如果用浮点数表示字符或整型量的输出格式, 小数点后的数字代表最大宽度, 小数点前的数字代表最小宽度。

   例如: %6.9s 表示显示一个长度不小于6且不大于9的字符串。若大于9, 则第9个字符以后的内容将被删除。


(2). 可以在"%"和字母之间加小写字母l, 表示输出的是长型数。

   ①例如: %ld 表示输出long整数

   ②%lf 表示输出double浮点数


(3). 可以控制输出左对齐或右对齐, 即在"%"和字母之间加入一个"-" 号可说明输出为左对齐, 否则为右对齐。

  ①例如: %-7d 表示输出7位整数左对齐

  ②%-10s 表示输出10个字符左对齐


(4). 一些特殊规定字符

    ①/n 换行
  ②/f 清屏并换页
  ③/r 回车
  ④/t Tab符
  ⑤/xhh 表示一个ASCII码用16进表示,
  ⑥其中hh是1到2个16进制数

6. printf() : examples

例1: various examples

复制代码 代码如下:

$n =  43951789; 
$u = -43951789; 
$c = 65; // ASCII 65 is 'A' 

// notice the double %%, this prints a literal '%' character 
printf("%%b = '%b'/n", $n); // binary representation 
printf("%%c = '%c'/n", $c); // print the ascii character, same as chr() function 
printf("%%d = '%d'/n", $n); // standard integer representation 
printf("%%e = '%e'/n", $n); // scientific notation 
printf("%%u = '%u'/n", $n); // unsigned integer representation of a positive integer 
printf("%%u = '%u'/n", $u); // unsigned integer representation of a negative integer 
printf("%%f = '%f'/n", $n); // floating point representation 
printf("%%o = '%o'/n", $n); // octal representation 
printf("%%s = '%s'/n", $n); // string representation 
printf("%%x = '%x'/n", $n); // hexadecimal representation (lower-case) 
printf("%%X = '%X'/n", $n); // hexadecimal representation (upper-case) 

printf("%%+d = '%+d'/n", $n); // sign specifier on a positive integer 
printf("%%+d = '%+d'/n", $u); // sign specifier on a negative integer 
?>  

 

The printout of this program would be:  
%b = '10100111101010011010101101' 
%c = 'A' 
%d = '43951789' 
%e = '4.39518e+7' 
%u = '43951789' 
%u = '4251015507' 
%f = '43951789.000000' 
%o = '247523255' 
%s = '43951789' 
%x = '29ea6ad' 
%X = '29EA6AD' 
%+d = '+43951789' 
%+d = '-43951789'

例2: string specifiers
复制代码 代码如下:

$s = 'monkey'; 
$t = 'many monkeys'; 

printf("[%s]/n",      $s); // standard string output 
printf("[%10s]/n",    $s); // right-justification with spaces 
printf("[%-10s]/n",   $s); // left-justification with spaces 
printf("[%010s]/n",   $s); // zero-padding works on strings too 
printf("[%'#10s]/n",  $s); // use the custom padding character '#' 
printf("[%10.10s]/n", $t); // left-justification but with a cutoff of 10 characters 
?>  

The printout of this program would be:  
[monkey] 
[    monkey] 
[monkey    ] 
[0000monkey] 
[####monkey] 
[many monke]

例3:zero-padded integers
复制代码 代码如下:

$isodate = sprintf("%04d-%02d-%02d", $year, $month, $day); 
?> 

例4:formatting currency
复制代码 代码如下:

$money1 = 68.75; 
$money2 = 54.35; 
$money = $money1 + $money2; 
// echo $money will output "123.1"; 
$formatted = sprintf("%01.2f", $money); 
// echo $formatted will output "123.10" 
?>

例5: sprintf() : scientific notation
复制代码 代码如下:

$number = 362525200; 

echo sprintf("%.3e", $number); // outputs 3.63e+8 
?> 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/621718.htmlTechArticle1. echo函数: 输出函数,是命令,不能返回值。echo后面可以跟很多个参数,之间用分号隔开,如: echo $myvar1; echo 1,2,$myvar,"bbold/b"; 2. print函...
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

解释PHP中的晚期静态绑定(静态::)。 解释PHP中的晚期静态绑定(静态::)。 Apr 03, 2025 am 12:04 AM

静态绑定(static::)在PHP中实现晚期静态绑定(LSB),允许在静态上下文中引用调用类而非定义类。1)解析过程在运行时进行,2)在继承关系中向上查找调用类,3)可能带来性能开销。

以太币和比特币的区别 以太币和比特币区别是什么 以太币和比特币的区别 以太币和比特币区别是什么 Mar 19, 2025 pm 04:54 PM

以太币与比特币区别显着。技术上,比特币用 PoW,以太币从 PoW 转向 PoS 。交易速度比特币慢,以太币快。应用场景里,比特币侧重支付存储,以太币支撑智能合约与 DApp 。发行上,比特币总量 2100 万枚,以太币无固定总量。安全方面各有挑战。市场价值上,比特币市值居首,两者价格波动都大,但因特性不同,以太币价格走势有独特之处 。

在PHP API中说明JSON Web令牌(JWT)及其用例。 在PHP API中说明JSON Web令牌(JWT)及其用例。 Apr 05, 2025 am 12:04 AM

JWT是一种基于JSON的开放标准,用于在各方之间安全地传输信息,主要用于身份验证和信息交换。1.JWT由Header、Payload和Signature三部分组成。2.JWT的工作原理包括生成JWT、验证JWT和解析Payload三个步骤。3.在PHP中使用JWT进行身份验证时,可以生成和验证JWT,并在高级用法中包含用户角色和权限信息。4.常见错误包括签名验证失败、令牌过期和Payload过大,调试技巧包括使用调试工具和日志记录。5.性能优化和最佳实践包括使用合适的签名算法、合理设置有效期、

c#多线程和异步的区别 c#多线程和异步的区别 Apr 03, 2025 pm 02:57 PM

多线程和异步的区别在于,多线程同时执行多个线程,而异步在不阻塞当前线程的情况下执行操作。多线程用于计算密集型任务,而异步用于用户交互操作。多线程的优势是提高计算性能,异步的优势是不阻塞 UI 线程。选择多线程还是异步取决于任务性质:计算密集型任务使用多线程,与外部资源交互且需要保持 UI 响应的任务使用异步。

欧易okex开盘收盘时间详细介绍 欧易okex开盘收盘时间详细介绍 Mar 18, 2025 pm 01:06 PM

欧易OKEx数字资产交易平台区别于传统证券市场,24小时全天候开放交易,用户可随时进行法币交易、币币交易和合约交易等。 但平台会在系统维护升级或特殊市场事件(如极端行情导致市场剧烈波动)等情况下,提前公告并临时调整交易时间或规则,例如暂停交易或修改合约交易开仓规则等。因此,建议用户密切关注平台公告和市场动态,把握交易时机并做好风险管理。 了解欧易OKEx交易时间及规则调整,才能在数字货币市场中游刃有余。

C语言 sum 的作用是什么? C语言 sum 的作用是什么? Apr 03, 2025 pm 02:21 PM

C语言中没有内置求和函数,需自行编写。可通过遍历数组并累加元素实现求和:循环版本:使用for循环和数组长度计算求和。指针版本:使用指针指向数组元素,通过自增指针遍历高效求和。动态分配数组版本:动态分配数组并自行管理内存,确保释放已分配内存以防止内存泄漏。

什么是PHP魔术方法(__ -construct,__destruct,__call,__get,__ set等)并提供用例? 什么是PHP魔术方法(__ -construct,__destruct,__call,__get,__ set等)并提供用例? Apr 03, 2025 am 12:03 AM

PHP的魔法方法有哪些?PHP的魔法方法包括:1.\_\_construct,用于初始化对象;2.\_\_destruct,用于清理资源;3.\_\_call,处理不存在的方法调用;4.\_\_get,实现动态属性访问;5.\_\_set,实现动态属性设置。这些方法在特定情况下自动调用,提升代码的灵活性和效率。

哪个是更好的PHP或Laravel? 哪个是更好的PHP或Laravel? Mar 27, 2025 pm 05:31 PM

PHP和Laravel不是直接可比的,因为Laravel是基于PHP的框架。1.PHP适合小型项目或快速原型开发,因其简单直接。2.Laravel适合大型项目或高效开发,因其提供丰富功能和工具,但学习曲线较陡,性能可能不如纯PHP。

See all articles