导航:首页 > 编程语言 > sprintf函数php

sprintf函数php

发布时间:2022-12-22 11:58:14

‘壹’ php中sprintf怎么用与printf,vprintf各有什么区别和联系

int fprintf()(FILE *stream, const char *format, ...)
fprintf()转化并格式化地写入输出流。返回值是写入的字符个数;或者为负数,如果有错误发生。

int printf()(const char *format, ...)
printf(...)与fprintf(stdout, ...)等价。

int sprintf(char *s, const char *format, ...)
sprintf与printf相同,只是输出被写入字符串s,并且以’\0’结束。s必须足够大以容纳结果。函数返回不包括’\0’的字符数。

int vprintf(const char *format, va_list arg)
函数vprintf与printf等价,只是用arg替换了变量参数列表,arg由va_start宏初始化,并且va_arg可能会调用它。

int putchar(int c)
putchar(c)与putc(c,stdout)等价。

‘贰’ PHP怎么定义保留2位小数的变量

在php中要保留两位小数的方法有很多种办法,有如:printf,substr,number_format,round等等方法


方法一

sprintf()函数 ,sprintf() 函数把格式化的字符串写写入一个变量中

<?php
$number=123;
$txt=sprintf("%f",$number);
echo$txt;
?>
输出:
123.000000



方法二substr()函数

$num=123213.666666;
echosprintf("%.2f",substr(sprintf("%.3f",$num),0,-2));



方法三 number_format()函数

$number=1234.5678;
$nombre_format_francais=number_format($number,2,',','');//1234,57
$english_format_number=number_format($number,2,'.','');//1234.57(我一般用这个)

方法四 round 函数,round() 函数对浮点数进行四舍五入。

<?php
echo(round(0.60));
echo(round(0.50));
echo(round(0.49));
echo(round(-4.40));
echo(round(-4.60));
?>
输出:
1
1
0
-4
-5

如果要保留小数,后来参数根保留小数位数即可。

$number=1234.5678;
echoround($number,2);//1234.57

‘叁’ PHP中的文件系统函数(一)

从这篇文章开始,我们将学习一系列的 PHP 文件系统相关函数。其实这些函数中,有很多都是我们经常用到的,大家并不需要刻意地去记住它们,只要知道有这么个东西,在使用的时候记得来查文档就可以了。

文件路径相关的函数往往在一些框架中会比较常见,而且多会配合 __FILE__ 、 __DIR__ 之类的魔术常量使用。

basename() 函数是获得路径中的文件名,它有两个参数,第一个是文件的路径,第二个是过滤掉的内容,比如第一条测试语句我们过滤掉文件的后缀名。

dirname() 返回的是路径中的路径部分,也就是不包含文件名的那部分内容,和 basename() 正好是相反的功能。

pathinfo() 函数用于以数组的形式返回路径中的信息,从结果来看,我们可以看到文件的 dirname 部分,basename 部分,以及文件的扩展名 extension 和不包含扩展名的 filename 内容。

realpath() 返回的是规范化的绝对路径名,它扩展所有的符号连接并且处理输入的路径中的 ./ 、 ../ 以及多余的 / ,返回的内容是标准规范的绝对路径。

接下来,我们学习一些修改文件相关属性的函数,主要就是在 Linux 系统环境中的文件权限信息的操作。

当然,首先我们得创建一个文件。和 Linux 中的命令是非常类似的。

touch() 函数除了给出要创建的文件名之外,还有两个可选参数可以指定文件的创建时间及访问时间,不给参数的话默认就是当前时间。这个文件名可以是相对或绝对路径中有权限的目录,并在该目录下创建一个空的文件。

通过 fileowner() 函数,我们可以获得某个文件所属的用户,默认情况下我们的用户是当前运行 PHP 脚本的用户,也就是系统目前的登录用户。在这里,我们使用 chown() 函数,将用户改为 www 用户。clearstatcache() 是用于清理文件系统的缓存信息,如果不清理一下的话,fileowner() 返回的依然还是之前的用户信息。

同理,使用 filegroup() 函数获得文件的属组信息,chgrp() 用于修改文件的属组。fileperms() 用于返回文件的权限信息,它返回的是数字模式的文件访问权限,这里我们使用 sprintf() 格式化结果后获得我们常用的 Linux 系统权限格式。chmod() 函数用于修改文件的权限,它的权限参数是三个 8 进制数据组成的数字,也就是代表 Linux 系统中的 1 、2 、4 和它们的组合,所以我们需要在前面再加上一个 0 用于确保操作能够正常执行。关于系统文件权限的知识大家需要认真学习 Linux 系统中相关的内容。

注意,上述函数如果在命令行中运行失败,大部分原因是没有权限,可以使用 sudo 进行测试。在 fastcgi 中运行时,就更加需要注意权限问题,仅在我们服务器可以操作的目录中进行安全的文件权限修改。

stat() 函数可以获取到指定文件的所有属性信息,在这里我们可以看到文件的 uid 、 gid 、 ctime 、 mtime 等信息。

在 Linux 系统中,有软连接和硬连接的相关知识。其实软连接就像是 Windows 中的快捷方式,而硬连接相关于复制了一份数据。在 PHP 中,也为我们提供了创建软硬连接以及相关的一些操作。

使用 link() 函数创建的就是一个指定文件的硬连接文件,而使用 symlink() 创建的则是一个软连接文件。相对来说,我们使用软连接的场景会更多一些。lstat() 就和 stat() 函数的功能一样,查看文件的各种属性信息,不过 lstat() 函数针对的是软硬连接文件。

同样地,我们也可以修改软硬连接的用户和用户组信息,不过它们的信息不能通过 fileowner() 或 filegroup() 查看。因为它们是连接文件,本身还是和原始文件绑定在一起的,使用 fileowner() 这类的函数查看到的依然是原始文件的信息。我们可以在系统环境中使用 ls -l 查看连接文件的用户和用户组信息是否修改成功。

今天的内容比较简单,而且修改权限的操作也并不常用。不过对于系统安全来,它们还是非常有用的,比如对于上传来说,我们要预防上传可执行文件的话,就可以通过修改文件的权限来让文件无法直接运行,从而起到安全保护的作用。另外,目录路径相关的操作也是一些框架的基础,几乎所有框架的入口或者说是 Composer 的入口,都会见到 dirname() 以及 basename() 之类函数的身影。

测试代码:

https://github.com/zhangyue0503/dev-blog/blob/master/php/202010/source/6.PHP中的文件系统函数(一).php

参考文档:

https://www.php.net/manual/zh/ref.filesystem.php

‘肆’ PHP如何格式化数字

PHP格式化数字的函数是number_format

我建议你去下载一个PHP的使用手册,或者看网上的在线手册也行。

http://www.itlearner.com/code/php/

关于他的用法如下:

语法: string number_format(float number, int [decimals], string [dec_point], string [thousands_sep]);

返回值: 字符串

函数种类: 数学运算

内容说明

本函数用来将浮点参数 number 格式化。若没加参数 decimals 则返回的字符串只要整数部份,加了此参数才依参数指定的小数点位数返回。参数 dec_point 表示小数点的表示方式方法,默认值是 ".",若需要转换成其它的小数点就可以在这个参数改掉。参数 thousands_sep 为整数部份每三位的分隔符号,默认值是 ","。本函数最特别的地方就是参数数目,最少要有一个,也就是欲格式化的字符串;也可以有二个或者四个参数,但不能用三个参数。治募�注意的是指定小数点的位数之后的数字直接舍弃,没有四舍五入的情形。

使用范例

<?
$short_pi = "3.14159";
$my_pi = number_format($short_pi, 2);
echo $my_pi."\n"; // 3.14
$foo = 850017.9021;
$new_foo = number_format($foo, 3, ".", " ");
echo $new_foo."\n"; // 850 017.902
?>

‘伍’ php中整形转换为浮点型,并精确的小数点后两位

PHP 中sprintf函数可以将整数格式化为浮点格式。比如格式化参数:%nf;其中,n 表示小数点后的位数。比如:
<?php
$num=9.8;
$res=sprintf("%.2f", $num);
//输出:9.80

?>

‘陆’ 如何使用PHP函数sprintf将字符串格式化

如果有一个字符串$str = '99.9';,怎么样使这个字符串变成99.90呢?
我们需要用到PHP的格式化字符串函数sprintf()
函数说明:sprintf(格式, 要转化的字符串)
返回:格式化好的字符串
例子:
$str = '99.9';
$result = sprintf('%01.2f', $str);
echo $result;//结果显示99.90

解释下,上面例子中的格式
这个 %01.2f 是什么意思呢?
1、这个 % 符号是开始的意思,写在最前面表示指定格式开始了。 也就是 "起始字符", 直到出现 "转换字符" 为止,就算格式终止。
2、跟在 % 符号后面的是 0, 是 "填空字符" ,表示如果位置空着就用0来填满。
3、在 0 后面的是1,这个 1 是规定整个所有的字符串占位要有1位以上(小数点也算一个占位)。
如果把 1 改成 6,则 $result的值将为 099.90
因为,在小数点后面必须是两位,99.90一共5个占位,现在需要6个占位,所以用0来填满。
4、在 %01 后面的 .2 (点2) 就很好理解了,它的意思是,小数点后的数字必须占2位。 如果这时候,$str 的值为9.234,则 $result的值将为9.23.
为什么4 不见了呢? 因为在小数点后面,按照上面的规定,必须且仅能占2位。 可是 $str 的值中,小数点后面占了3位,所以,尾数4被去掉了,只剩下 23。
5、最后,以 f "转换字符" 结尾。

‘柒’ php,sprintf函数输出字符串问题

你运行一下这个代码,输出内容是:
[many monke]

printf的第一个参数是输出内容,后面的参数对应第一个参数里面的%*。例如本例代码,第一个参数是[%s],表示输出第二个参数,作为字符串。%10.10s里面的10.10表示输出占10个字符宽度、从字符串左边开始、最多只输出10个字符,输出的内容靠右、如果不够宽度(例如10.8s输出[ many mon])则空格在左边。

‘捌’ PHP echo,print,printf,sprintf函数的区别和使用

printf函数与sprintf不同之处有: (1)函数的声明不同 int printf(const char *format [, argument]);int sprintf(char *buffer, const char *format [, argument] );sprintf比printf多一个参数buffer,这个参数的作用见(2)的描述。 (

‘玖’ php 中的字符串中的%s和%d是什么意思

亲,字符串中的%s和%d代表你一定格式的可替换占位符。

%s:代表字符串

%d:代表数字

例如:

echo sprintf('这是一个字符串:%s,这是一个数字:%d', '字符串', 123);

这个会输出:

这是一个字符串:字符串,这是一个数字:123

希望可以帮到你哟!~~有不懂的可以继续追问,或私信,或到boboidea-本人博客留言!~

阅读全文

与sprintf函数php相关的资料

热点内容
dvd光盘存储汉子算法 浏览:757
苹果邮件无法连接服务器地址 浏览:963
phpffmpeg转码 浏览:671
长沙好玩的解压项目 浏览:145
专属学情分析报告是什么app 浏览:564
php工程部署 浏览:833
android全屏透明 浏览:737
阿里云服务器已开通怎么办 浏览:803
光遇为什么登录时服务器已满 浏览:302
PDF分析 浏览:485
h3c光纤全工半全工设置命令 浏览:143
公司法pdf下载 浏览:382
linuxmarkdown 浏览:350
华为手机怎么多选文件夹 浏览:683
如何取消命令方块指令 浏览:350
风翼app为什么进不去了 浏览:778
im4java压缩图片 浏览:362
数据查询网站源码 浏览:150
伊克塞尔文档怎么进行加密 浏览:892
app转账是什么 浏览:163