谢谢您的支持。我有一个字符串,例如,32 个字符。首先,我想确定字符串最多有 32 个字符,如果字符只有 9 个,我想添加空格。
例子:
ABCDEFGHI ---> 9 个字符
我要这个:
ABCDEFGHI_ _ __ _ __ _ __ _ ---> 9 个字符 + 23 个空格自动添加。
谢谢
谢谢您的支持。我有一个字符串,例如,32 个字符。首先,我想确定字符串最多有 32 个字符,如果字符只有 9 个,我想添加空格。
例子:
ABCDEFGHI ---> 9 个字符
我要这个:
ABCDEFGHI_ _ __ _ __ _ __ _ ---> 9 个字符 + 23 个空格自动添加。
谢谢
您正在寻找的功能是str_pad
.
http://php.net/manual/de/function.str-pad.php
$str = 'ABCDEFGHI';
$longstr = str_pad($str, 32);
默认填充字符串已经是空格。
由于您的最大长度应为 32,并且当字符串长度超过 32 个字符时不会采取任何操作,您可能希望使用thenstr_pad
将其缩短:substr
http://de.php.net/manual/de/function.substr.php
$result = substr($longstr, 0, 32);
如果您的字符串正好是 32 个字符长,这也不会采取任何行动,因此您现在总是以 32 个字符的字符串结束$result
。
使用str_pad:
str_pad('ABCDEFGHI', 32);
使用str_pad
功能:
$result = str_pad($input, 32, " ");
你需要str_pad
$padded = str_pad($in,32,' ');
如果输入超过 32 个字符,则不采取任何措施,但这是一个易于实施的检查:
if (strlen($padded) > 32)
{
throw new Exception($padded.' is too long');//or some other action
}
我不是 PHP 开发人员,但我认为这就是您想要的。
for($i=0;$i<(32-strlen($your_string));$i++)
{
$new_string.=$your_string.' '
}
希望对你有帮助
如果您想在函数内部进行更多自定义,您可以使用它
function fill($input, $length, $filler = ' ')
{
$len = strlen($input);
$diff = $length - $len;
if($diff > 0)
{
for ($i = 0; $i < $diff; $i++)
{
$input = $input . $filler;
}
}
return substr($input, 0, $length);
}
$str = "ABCDEFGHI";
for ($i = 0; $i < 23; $i++) {
$str .= " ";
}
这就是你想要的?
当看到其他评论时,那将是最好的解决方案。