search
Homephp教程php手册深入理解php printf() 输出格式化的字符串,深入理解printf

深入理解php printf() 输出格式化的字符串,深入理解printf

php printf() 函数用于输出格式化的字符串,本文章向码农介绍php printf()函数的使用方法和基本使用实例,感兴趣的码农可以参考一下。

定义和用法

printf() 函数输出格式化的字符串。

arg1、arg2、arg++ 参数将被插入到主字符串中的百分号(%)符号处。该函数是逐步执行的。在第一个 % 符号处,插入 arg1,在第二个 % 符号处,插入 arg2,依此类推。

注释:如果 % 符号多于 arg 参数,则您必须使用占位符。占位符被插入到 % 符号之后,由数字和 "\$" 组成。请参见例子 2。

提示:相关函数:sprintf()、 vprintf()、 vsprintf()、 fprintf() 和 vfprintf()

•fprintf()
•sprintf()
•vfprintf()
•vprintf()
•vsprintf() 

语法

printf(format,arg1,arg2,arg++) 

参数 描述
format

必需。规定字符串以及如何格式化其中的变量。

可能的格式值:

  • %% - 返回一个百分号 %
  • %b - 二进制数
  • %c - ASCII 值对应的字符
  • %d - 包含正负号的十进制数(负数、0、正数)
  • %e - 使用小写的科学计数法(例如 1.2e+2)
  • %E - 使用大写的科学计数法(例如 1.2E+2)
  • %u - 不包含正负号的十进制数(大于等于 0)
  • %f - 浮点数(本地设置)
  • %F - 浮点数(非本地设置)
  • %g - 较短的 %e 和 %f
  • %G - 较短的 %E 和 %f
  • %o - 八进制数
  • %s - 字符串
  • %x - 十六进制数(小写字母)
  • %X - 十六进制数(大写字母)

附加的格式值。必需放置在 % 和字母之间(例如 %.2f):

  • + (在数字前面加上 + 或 - 来定义数字的正负性。默认地,只有负数做标记,正数不做标记)
  • ' (规定使用什么作为填充,默认是空格。它必须与宽度指定器一起使用。)
  • - (左调整变量值)
  • [0-9] (规定变量值的最小宽度)
  • .[0-9] (规定小数位数或最大字符串长度)

注释:如果使用多个上述的格式值,它们必须按照上面的顺序进行使用,不能打乱。

arg1 必需。规定插到 format 字符串中第一个 % 符号处的参数。
arg2 必需。规定插到 format 字符串中第二个 % 符号处的参数。
arg++ 可选。规定插到 format 字符串中第三、四等等 % 符号处的参数。

 

技术细节

返回值: 返回被输出字符串的长度。
PHP 版本: 4+

 

实例

例子 1

使用格式值 %f:

<&#63;php 
$number = 123; 
printf("%f",$number); 
&#63;> 

例子 2

使用占位符:

<&#63;php 
$number = 123; 
printf("有两位小数:%1\$.2f<br>没有小数:%1\$u",$number); 
&#63;> 

例子 3

所有可能的格式值的演示:

<&#63;php 
$num1 = 123456789; 
$num2 = -123456789; 
$char = 50; // ASCII 字符 50 是 2 
 
// 注释:格式值 "%%" 返回百分号 
printf("%%b = %b <br>",$num1); // 二进制数 
printf("%%c = %c <br>",$char); // ASCII 字符 
printf("%%d = %d <br>",$num1); // 带符号的十进制数 
printf("%%d = %d <br>",$num2); // 带符号的十进制数 
printf("%%e = %e <br>",$num1); // 科学计数法(小写) 
printf("%%E = %E <br>",$num1); // 科学计数法(大写) 
printf("%%u = %u <br>",$num1); // 不带符号的十进制数(正) 
printf("%%u = %u <br>",$num2); // 不带符号的十进制数(负) 
printf("%%f = %f <br>",$num1); // 浮点数(视本地设置) 
printf("%%F = %F <br>",$num1); // 浮点数(不视本地设置) 
printf("%%g = %g <br>",$num1); // 短于 %e 和 %f 
printf("%%G = %G <br>",$num1); // 短于 %E 和 %f 
printf("%%o = %o <br>",$num1); // 八进制数 
printf("%%s = %s <br>",$num1); // 字符串 
printf("%%x = %x <br>",$num1); // 十六进制数(小写) 
printf("%%X = %X <br>",$num1); // 十六进制数(大写) 
printf("%%+d = %+d <br>",$num1); // 符号说明符(正) 
printf("%%+d = %+d <br>",$num2); // 符号说明符(负) 
&#63;>

例子 4

字符串说明符的演示:

<&#63;php
$str1 = "Hello";
$str2 = "Hello world!";

printf("[%s]<br>",$str1);
printf("[%8s]<br>",$str1);
printf("[%-8s]<br>",$str1);
printf("[%08s]<br>",$str1);
printf("[%'*8s]<br>",$str1);
printf("[%8.8s]<br>",$str2);
&#63;>

以上这篇深入理解php printf() 输出格式化的字符串就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持帮客之家。

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
为什么d盘无法格式化为什么d盘无法格式化Aug 30, 2023 pm 02:39 PM

d盘无法格式化的原因有该盘正在被其他程序或进程使用、该盘上存在损坏的文件系统、硬盘故障和权限问题的。详细介绍:1、D盘无法格式化可能是因为该盘正在被其他程序或进程使用,在Windows操作系统中,如果有程序正在访问D盘上的文件或文件夹,系统将无法执行格式化操作;2、D盘无法格式化可能是因为该盘上存在损坏的文件系统,文件系统是操作系统用来组织和管理存储设备上的文件和文件夹的等等。

光盘格式化是什么光盘格式化是什么Aug 17, 2023 pm 04:02 PM

光盘格式化是指将光盘的文件系统进行重建和清空的过程,在光盘格式化过程中,所有的数据都会被彻底删除,同时文件系统会被重新建立,以便在光盘上重新存储数据。光盘格式化可以用于保护数据安全、修复光盘故障和清除病毒等目的,在进行光盘格式化时,需要备份重要数据、选择适当的文件系统,并耐心等待格式化完成。

提升Java时间日期格式化解析性能的方法提升Java时间日期格式化解析性能的方法Jul 01, 2023 am 08:07 AM

如何优化Java开发中的时间日期格式化解析性能摘要:在Java开发中,时间日期格式化与解析是常见的操作,但是由于时间日期格式复杂多样且处理的数据量庞大,往往会成为性能瓶颈。本文将介绍几种优化Java开发中时间日期格式化解析性能的方法,包括使用缓存、减少对象创建、选择适当的API等。一、引言时间日期格式化与解析在Java开发中非常常见。然而,在实际应用中,由于

修复:Rufus 无法在 Windows PC 中创建可启动 USB 问题修复:Rufus 无法在 Windows PC 中创建可启动 USB 问题Apr 29, 2023 am 09:19 AM

Rufus是一款出色的工具,可以轻松创建可启动的USB驱动器。这个小巧而时尚的工具的效率令人惊叹,通常可以提供无错误的操作。但是,有时创建一个新的可启动USB记忆棒会弹出一些错误消息,从而在刻录过程中绊倒。如果您在使用Rufus时遇到任何困难,您可以按照以下步骤为您的问题找到快速解决方案。修复1–运行驱动器的错误检查器在使用Rufus重试之前,您可以运行驱动器的错误检查器工具来扫描驱动器是否存在任何错误。1.同时按下Windows键+E键打开文件资源管理器。然后,点击“这台电脑

使用fmt.Sprint函数将多个值格式化为字符串并返回,包括类型信息使用fmt.Sprint函数将多个值格式化为字符串并返回,包括类型信息Jul 25, 2023 am 09:01 AM

使用fmt.Sprint函数将多个值格式化为字符串并返回,包括类型信息在Go语言中,fmt包提供了许多函数用于将数据格式化为字符串。其中,fmt.Sprint函数可以将多个值格式化为字符串并返回。与fmt.Sprintf函数不同的是,fmt.Sprint函数返回一个字符串,而不是一个格式化后的字符串。下面是一个使用fmt.Sprint函数的简单示例代码:pa

格式化u盘有什么后果格式化u盘有什么后果Jan 13, 2021 pm 05:32 PM

格式化u盘的后果:1、清空U盘,会将u盘中的文件全部删除;2、可以消除U盘上的一些逻辑性的错误和非顽固性病毒或流氓程序;3、如果经常性反复格式化u盘,会降低U盘的使用寿命。

go语言格式化是什么意思go语言格式化是什么意思Aug 17, 2023 pm 01:49 PM

go语言格式化是指对代码进行统一的排版和风格处理,可以提高代码的可读性、可维护性和团队协作效率。通过格式化,可以使代码更易读、更易于维护,并减少潜在的错误。在进行Go语言开发时,应该养成良好的格式化习惯,并结合其他技术手段来保证代码的质量和可维护性。

格式化数据分区是什么意思?格式化数据分区是什么意思?Mar 10, 2023 am 11:41 AM

格式化数据分区就是对指定磁盘中的数据分区进行初始化操作,这种操作通常会导致现有分区中所有的文件被清除。磁盘格式化牵涉两个不同的程序:低级与高级格式化。前者处理盘片表面格式化赋与磁片扇区数的特质;低级格式化完成后,硬件盘片控制器(disk controller)即可看到并使用低级格式化的成果;后者处理“伴随着操作系统所写的特定信息”。

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

Hot Tools

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)