str_pad 是 php 中用于在字符串左右或两端填充指定字符以达到目标长度的函数,支持右对齐、左对齐和居中对齐,常用于格式化输出;参数包括原字符串、目标长度、填充字符(默认空格)和填充方向常量。

str_pad 是 PHP 中用来在字符串左右或两端添加指定字符,使其达到指定长度的函数,常用于格式化输出、对齐文本(比如表格、日志、控制台打印等)。
基本用法和参数说明
语法:str_pad($input, $length, $pad_string = ' ', $pad_type = STR_PAD_RIGHT)
- $input:要处理的原始字符串
- $length:目标总长度(如果原字符串已等于或超过该长度,则不补全)
-
$pad_string:用于填充的字符,默认是空格;可为任意字符串(如
"0"、"-"、" "),但会被截取或重复以适配所需长度 -
$pad_type:填充方向,有三个预定义常量:
•STR_PAD_RIGHT(默认):右对齐,补在右边
•STR_PAD_LEFT:左对齐,补在左边
•STR_PAD_BOTH:居中对齐,左右平均补(左边略多当长度为奇数时)
常见对齐场景示例
右对齐数字(如金额、编号):
echo str_pad("42", 6, "0", STR_PAD_LEFT); // 输出:"000042"
左对齐字段(如姓名列):
echo str_pad("张三", 10, " ", STR_PAD_RIGHT); // 输出:"张三 "(注意中文占位需考虑字体渲染,实际宽度可能与字节数不一致)
居中标题(适合简单 CLI 输出):
echo "|" . str_pad("用户信息", 12, "-", STR_PAD_BOTH) . "|"; // 输出:"|----用户信息----|"
使用注意事项
- 如果 $length 小于原字符串长度,函数直接返回原字符串,不会截断
-
$pad_string 长度不限制,但系统会自动循环或截断它来凑够需要补的字符数。例如:
str_pad("a", 7, "xy")→"axyxyxy" - 处理中文等多字节字符时,str_pad 按字节计算长度,不是按字符个数。若用 UTF-8 编码,一个中文通常占 3 字节,可能导致视觉不对齐。此时建议先用
mb_strlen判断,或改用mb_str_pad(需开启 mbstring 扩展) - 避免用不可见字符(如
\t)做$pad_string,容易引发显示异常
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











