Heim > Backend-Entwicklung > PHP-Tutorial > php 数目字或者字符串补全

php 数目字或者字符串补全

WBOY
Freigeben: 2016-06-13 10:56:23
Original
932 Leute haben es durchsucht

php 数字或者字符串补全

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

?

方法一:

定义和用法

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

?

语法

sprintf(format,arg1,arg2,arg++)
Nach dem Login kopieren
?参数 描述
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?>
Nach dem Login kopieren

?

<?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?>
Nach dem Login kopieren
?

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

%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)
Nach dem Login kopieren
? 参数 描述
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.........?>
Nach dem Login kopieren
?
<?php$str = "Hello World";echo str_pad($str,20,".",STR_PAD_LEFT);  //.........Hello World?>
Nach dem Login kopieren
?
<?php$str = "Hello World";echo str_pad($str,20,".:",STR_PAD_BOTH);  //.:.:Hello World.:.:.?>
Nach dem Login kopieren
?
<?phpecho str_pad(1,2,0,STR_PAD_LEFT); //01?>
Nach dem Login kopieren
?

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

?

?

方法三: 仅限数字不全

?

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

?

?

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

?

?

?

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage