WithCoderWithCoderWithCoder

PHP字符串函数str_pad(填充字符串)

    在PHP中,把十进制转换为十六进制时,转换出来的字符串长度不一,可能是一个、两个或多个字符。为了处理方便,需要将转换后的字符串长度设置为统一的长度,在PHP中,可以使用字符串函数 str_pad() 的填充功能来实现。

    str_pad()函数介绍

    使用另一个字符串填充字符串到指定长度,语法:

str_pad ( string $input , int $pad_length [, string $pad_string = " " [, int $pad_type = STR_PAD_RIGHT ]] ) : string

    参数:

参数描述
string必须,规定要填充的字符串,
length必须,规定新的字符串长度,如果该值为负数,小于或等于字符串的原始长度,则不做任何操作。
pad_string可选,规定填充使用的字符串,默认是空字符串。
pad_type可选,规定填充字符串哪边,STR_PAD_BOTH -- 填充字符串的两侧,如果不是偶数,则右侧获得额外的填充。STR_PAD_LEFT -- 填充字符串的左侧。STR_PAD_RIGHT -- 填充字符串的右侧,默认。

    说明:

        使用特定字符串及填充规则,把输入字符串填充到指定的长度,并返回填充后的字符串

    举例1,将十进制数字转换为十六进制:

<?php
// 将十进制数字转换为16进制
$d1 = 100;
$h1 = dechex($d1);
echo $h1; // 输出 64

echo '<br>';

$d2 = 300;
$h2 = dechex($d2);
echo $h2; // 输出12c

    输出结果:   

64
12c

    从输出结果可以看到,输出的十六进制字符串的长度不同。   

    举例2,将十进制数字转换为十六进制,并填充为固定长度:   

<?php
// 将十进制数字转换为16进制
$d1 = 100;
$h1 = dechex($d1);
$str1 = str_pad($h1, 4, '0', STR_PAD_LEFT);
echo $str1; // 输出 0064

echo '<br>';

$d2 = 300;
$h2 = dechex($d2);
$str2 = str_pad($h2, 4, '0', STR_PAD_LEFT);
echo $str2; // 输出 012c

    输出结果: 

0064
012c

    从输出结果可以看到,因为指定了填充长度为4,输出的十六进制字符串的长度相同。  

欢迎分享交流,转载请注明出处:WithCoder » PHP字符串函数str_pad(填充字符串)