1

文字列の文字を制限しようとしています。さらに、文字列が必要な文字数に満たない場合は、パディングを追加したいと考えています。

function create_string($string, $length) {
    $str_len = strlen($string);
    if($str_len > $length) {
        //if string is greater than max length, then strip it
        $str = substr($string, 0, $length);
    } else {
        //if string is less than the required length, pad it with what it needs to be the length
        $remaining = $length-$str_len;
        $str = str_pad($string, $remaining);
    }

    return $str;
}

私の入力は

「ニックのオートサロン」

これは 16 文字です。2 番目のパラメータは40.

ただし、この文字列が返されます

"Nik's Auto Salon        "

8 文字のパディングのみが追加されています。それは正しくないようです。

私もこの文字列を試しました:

ゴールドパッケージ モバイルカー 詳細

この入力では、パディングが追加されていない文字列を返します。そのフレーズが必要な 45 の長さよりも短い場合は、2 番目のパラメーターの場所に入れます。

この機能を自分の仕様に従って動作させるにはどうすればよいですか?

4

1 に答える 1