Fearless Mode
Fearless Mode

Reputation: 241

How to add a space to the end of a string?

I searched online and found the str_pad() function but this is not what I need. I need to automatically add a space at the end of a string.

The string value returned can be my default value or a custom value supplied by an extending developer. If the developer supplies extra characters, which they can, then the str_pad() approach won't always work.

Is there a simple function for this to ALWAYS add one space to the end of a string? Like a trim() but works the opposite?

Here is what I am doing.

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

My default is 'column span-12'

However the developer might return their custom classes as well so the return string value could look something like...

'dev-brand-column span-12'

'dev-brand-col col-12'

// etc...

I need to add a space as the end of the string regardless of the string length.

How can I achieve that? I find nothing that works the opposite of trim() like.

Upvotes: 0

Views: 4734

Answers (2)

NineBerry
NineBerry

Reputation: 28499

Use rtrim to first remove all whitespace at the end of the string that might be there, then add one space yourself:

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

Upvotes: 3

Jean-Luc Aubert
Jean-Luc Aubert

Reputation: 620

I think that sprintf() can help you...

For example :

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

Will return :

Bond

With 6 spaces at the end of the string.

Hope it helps.

Upvotes: -1

Related Questions