php 数字0补位,字符串空格补位

mac2024-05-29  39

https://www.jb51.net/article/49956.htm

 

 

相信大家一定遇到这样的问题,因为PHP是弱类型的,所以进行排序的时候,有时候很胃疼

所以这里就需要将位数进行统一后进行处理

一般都是将末尾添加0进行补位

方法1 :  str_pad — 使用另一个字符串填充字符串为指定长度

该函数返回 input 被从左端、右端或者同时两端被填充到制定长度后的结果

$input = '11111';

echo str_pad($input, 10, '0', STR_PAD_LEFT);  // 输出 "-=-=-

这里输出的结果是:

 1111100000

 

/*string str_pad ( string $input, int $pad_length [, string $pad_string [, int $pad_type]] )*/ <?php $input = "Alien"; echo str_pad($input, 10); // produces "Alien " echo str_pad($input, 10, "-=", STR_PAD_LEFT); // produces "-=-=-Alien" echo str_pad($input, 10, "_", STR_PAD_BOTH); // produces "__Alien___" echo str_pad($input, 6 , "___"); // produces "Alien_" ?> /*补齐字符串的长度.以pad_string 补.默认补在右边,如果STR_PAD_LEFT就补到左边,STR_PAD_BOTH两边一起补。下次用str_pad,毕竟是内置的,肯定比自定义的快。*/

 

/* 你上面的方法我觉得不怎么好,介绍一下我写的一个方法。方法函数如下,这样当你要的结果001的话,方法:dispRepair('1',3,'0') 功能:补位函数 str:原字符串 type:类型,0为后补,1为前补 len:新字符串长度 msg:填补字符 */ function dispRepair($str,$len,$msg,$type='1') {   $length = $len - strlen($str);   if($length<1)return $str;   if ($type == 1) {     $str = str_repeat($msg,$length).$str;   } else {     $str .= str_repeat($msg,$length);   }   return $str; }

最新回复(0)