2017-07-11 97 views
0

我在网上搜索,发现str_pad()函数,但这不是我所需要的。我需要在字符串的末尾自动添加一个空格。如何在字符串的末尾添加空格?

返回的字符串值可以是我的默认值,也可以是扩展开发人员提供的自定义值。如果开发人员提供额外的字符,他们可以,然后str_pad()方法不会总是工作。

是否有一个简单的函数来总是在字符串的末尾添加一个空格?像trim()但作品相反?

这是我在做什么。

str_pad($this->filter('custom_hook_name', FALSE, 'column span-12'), 15); 

我的默认值是'column span-12'

但是开发商可能会返回自己的自定义类,以及因此返回字符串值可能看起来像......

'dev-brand-column span-12' 

'dev-brand-col col-12' 

// etc... 

我需要添加一个空格作为字符串的结尾,而不管字符串的长度。

我该如何做到这一点?我找不到与trim()相反的东西。

+0

如果字符串末尾已经有空格,您还想添加一个空格么? – NineBerry

+3

'$ string = $ string。 '';'是最简单的方法,'.'负责连接php – ThisGuyHasTwoThumbs

+0

'str_pad($ this-> filter('custom_hook_name',FALSE,'column span-12'),strlen($ this - > filter('custom_hook_name',FALSE,'column span-12'))+ 1);':) – RiggsFolly

回答

4

使用rtrim先删除在字符串末尾的所有空格,可能是在那里,然后自己添加一个空格:

$str = rtrim($str) . " "; 
+2

只是作为参考点,以防万一任何人想看'rtrim' http://uk1.php.net/manual/ en/function.rtrim.php – ThisGuyHasTwoThumbs

+0

谢谢!啊......我不知道为什么我只是想加入这样的空间。欣赏它!感谢rtrim的回退。 –

-2

我认为的sprintf()可以帮助你......

例如:

$string = "Bond"; 
printf("%-10s", $string); 

返回结果:

Bond 

在字符串末尾有6个空格。

希望它有帮助。

+1

'sprintf'似乎有点ott,当你只能concat – ThisGuyHasTwoThumbs

+1

这基本上与使用str_pad相同的问题。您需要指定所需的长度。当字符串很短时,会添加多个空格。当字符串太长时,不会添加空格。 – NineBerry

+0

谢谢!是的,当我找到str_pad()方法时,我看到了这个答案。这不是我想要的,但是当我发布时我忘了提及它,因为我已经排除了它。 –

相关问题