很多站长朋友们都不太清楚php输入输出参数格式化,今天小编就来给大家整理php输入输出参数格式化,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 PHP如何格式化数字 2、 如何使用PHP函数sprintf将字符串格式化 3、 php数值格式化输出问题! 4、 php字符串的格式化 PHP如何格式化数字PHP格式化数字的函数是number_format
我建议你去下载一个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函数sprintf将字符串格式化PHP函数sprintf()用来将字符串格式化。参数 format 是转换的格式,以百分比符号 % 开始到转换字符为止。而在转换的格式间依序包括了
填空字符。0 的话表示空格填 0;空格是默认值,表示空格就放着。
对齐方式。默认值为向右对齐,负号表向左对齐。
字段宽度。为最小宽度。
精确度。指在小数点后的浮点数位数。
php数值格式化输出问题!程序代码:
<?php
echo fmt_num(2533120000)."<br>\n";
echo fmt_num(123456789 )."<br>\n";
function fmt_num($n){
$s=($n % 1000).'铜';$n=floor($n/1000);
$s=($n % 1000).'银'.$s;$n=floor($n/1000);
$s=($n % 100).'金'.$s;$n=floor($n/100);
$s=($n % 100).'钻'.$s;$n=floor($n/100);
return $s;
}
?>
运行示例:
E:\TEMP\文件\exp>a.php
25钻33金120银-296铜<br>
1钻23金456银789铜<br>
代码能看懂吧,我定义了一个函数,你可以根据需要修改函数的返回格式。
php字符串的格式化根据经验,PHP里没有长整型,默认就是32位的INT,超出范围就是FLOAT。所以这里$long是INT32
7.53160e+8叫做科学计数法,自己查着学习一下,这是常识。表示7.53160乘以10的8次方。
%%作为printf的参数,就表示输出一个%,而如果直接一个%表达的是别的意思,例如%d表示按整数形式输出printf的下一个参数
e是英文字母。“%e”是一种printf的参数,表示用科学计数法输出printf的下一个参数。
“%和0和一个数和小数点和另一个数和f”是一种printf的参数,表示用浮点形式输出下一个参数。组合很多。如果全部带齐了,0表示用数字0来填补空白,小数点前的数表示一个显示几位数(多了不管少了拿上一句话里提到的0来填补),小数点后的数表示显示出来的数里小数点后有几位数(多了不管少了拿上一句话里提到的0来填补)这下回答了两个问题
8是凭空想出来的,你可以用别的数,答案不同而已。
最后几个完全是错的。错误1:$在PHP里的双引号里,会代表转义,也就是说,因为$在双引号里,所以参数在进入printf之前,参数里的$已经被处理没了(是的,双引号里的东西在PHP里会被预处理一下,可以把双引号理解为一个函数,而单引号就不会处理$号)。错误2:对于printf,%才是控制格式输出的符号,$号只会被原样输出。所以为了得到答案,程序末尾必须是这样的:
printf("[%s]<br/>",$str);
printf("[%8s]<br/>",$str);
printf("[%-8s]<br/>",$str);
printf("[%08s]<br/>",$str);
printf("[%'\$8s]<br/>",$str);
那么,两端的“【”和“】”表示这两个字符,原样显示。中间是“%s”带各种参数。第一个,不带别的参数,就显示出来。后面几个带8的,把后面的$str显示为至少8位。如果没有别的参数,就用空格补足,左边补右对齐。带负号的,右边补左对齐。带0或者空格表示用这两个字符补足,而其他补足字符必须用“'”符号当前缀。所以%'\$8s首先被双引号预处理使得\$变成$,所以printf收到的参数是%'$8s,然后printf分析到了%s以及参数'$和8就认为是在$str前面补足8位,用$这个字符来补。
总的来说,printf里,%表示控制输出格式。s就是一个英文字母,%s表示按照String的方式输出。如果用双引号把参数传给printf还要注意“$”和“\”被双引号转义。
关于php输入输出参数格式化的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php输入输出参数格式化 php输入输出语句的详细内容...