Home  >  Article  >  Backend Development  >  php 数目字或者字符串补全

php 数目字或者字符串补全

WBOY
WBOYOriginal
2016-06-13 10:56:23876browse

php 数字或者字符串补全

PHP字符串自动填充、自动补全

?

方法一:

定义和用法

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

?

语法

sprintf(format,arg1,arg2,arg++)
?参数 描述
format 必需。转换格式。
arg1 必需。规定插到 format 字符串中第一个 % 符号处的参数。
arg2 可选。规定插到 format 字符串中第二个 % 符号处的参数。
arg++ 可选。规定插到 format 字符串中第三、四等等 % 符号处的参数。

说明

参数 format 是转换的格式,以百分比符号 ("%") 开始到转换字符结束。下面的可能的 format 值:

  • %% - 返回百分比符号
  • %b - 二进制数
  • %c - 依照 ASCII 值的字符
  • %d - 带符号十进制数
  • %e - 可续计数法(比如 1.5e+3)
  • %u - 无符号十进制数
  • %f - 浮点数(local settings aware)
  • %F - 浮点数(not local settings aware)
  • %o - 八进制数
  • %s - 字符串
  • %x - 十六进制数(小写字母)
  • %X - 十六进制数(大写字母)

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

?

<?php$str = "Hello";$number = 123;$txt = sprintf("%s world. Day number %u",$str,$number);echo $txt;  //Hello world. Day number 123?>

?

<?php$number = 123;$txt = sprintf("With 2 decimals: %1\$.2f<br />With no decimals: %1\$u",$number);echo $txt;//With 2 decimals: 123.00 //With no decimals: 123?>
?

<?php$number = 1;$txt = sprintf('%02s', $number);echo $txt; //01?>
?

%02s”表示输出成长度为2的字符串或数字,如果长度不足,左边以零补全;如果写成 “%2s”,则默认以空格补全;如果希望使用其它字符补全,则要在该字符前加上单引号,即形如“%'#2s”的表示以井号补全;最后,如果希望补全发生在 字符串右边,则在百分号后加上减号,“%-02s”。

?

来源: http://www.w3school.com.cn/php/func_string_sprintf.asp

?

方法二:

定义和用法

str_pad() 函数把字符串填充为指定的长度。

?

语法

str_pad(string,length,pad_string,pad_type)
? 参数 描述
string 必需。规定要填充的字符串。
length 必需。规定新字符串的长度。如果该值小于原始字符串的长度,则不进行任何操作。
pad_string 可选。规定供填充使用的字符串。默认是空白。
pad_type

可选。规定填充字符串的那边。

可能的值:

  • STR_PAD_BOTH - 填充到字符串的两头。如果不是偶数,则右侧获得额外的填充。
  • STR_PAD_LEFT - 填充到字符串的左侧。
  • STR_PAD_RIGHT - 填充到字符串的右侧。这是默认的。

?

<?php$str = "Hello World";echo str_pad($str,20,"."); //Hello World.........?>
?
<?php$str = "Hello World";echo str_pad($str,20,".",STR_PAD_LEFT);  //.........Hello World?>
?
<?php$str = "Hello World";echo str_pad($str,20,".:",STR_PAD_BOTH);  //.:.:Hello World.:.:.?>
?
<?phpecho str_pad(1,2,0,STR_PAD_LEFT); //01?>
?

来源: http://www.w3school.com.cn/php/func_string_str_pad.asp

?

?

方法三: 仅限数字不全

?

<?php$number = 1;$txt = substr(strval($number+100),1,2);echo $txt;?> 
?

?

?

转帖注明出处:http://justcoding.iteye.com/blog/998424

?

?

?

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