GoLang str_pad

is this article helpful? yes | no
GoLang replacement for PHP's str_pad [Golang Play | edit | history]
func StrPadLeft(input string, padLength int, padString string) string {
        output := ""
	inputLen := len(input)
	if inputLen >= padLength {
		return input
	ll := padLength - inputLen
	for i := 1; i <= ll; i = i + len(padString) {
		output += padString
	return output + input

PHP str_pad

PHP original manual for str_pad [ show | php.net ]


(PHP 4 >= 4.0.1, PHP 5, PHP 7)

str_padPad a string to a certain length with another string


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

This function returns the input string padded on the left, the right, or both sides to the specified padding length. If the optional argument pad_string is not supplied, the input is padded with spaces, otherwise it is padded with characters from pad_string up to the limit.



The input string.


If the value of pad_length is negative, less than, or equal to the length of the input string, no padding takes place, and input will be returned.



The pad_string may be truncated if the required number of padding characters can't be evenly divided by the pad_string's length.


Optional argument pad_type can be STR_PAD_RIGHT, STR_PAD_LEFT, or STR_PAD_BOTH. If pad_type is not specified it is assumed to be STR_PAD_RIGHT.

Return Values

Returns the padded string.


Example #1 str_pad() example

str_pad($input10);                      // produces "Alien     "
echo str_pad($input10"-="STR_PAD_LEFT);  // produces "-=-=-Alien"
echo str_pad($input10"_"STR_PAD_BOTH);   // produces "__Alien___"
echo str_pad($input,  6"___");               // produces "Alien_"
echo str_pad($input,  3"*");                 // produces "Alien"