2

テキストを含む文字列がありますが、最後の文字はスラッシュである可能性がありますが、これは望ましくありません。存在する場合、どうすれば削除できますか?

これは「正しい」方法ですか?

if(substr($str, -1) == "/") $str = rtrim($str, '/');
4

5 に答える 5

10

条件なしで使用rtrimすると、短くなり、おそらく高速になります。追加されたのifはノイズであり、何も提供しません。

于 2012-05-01T19:10:38.417 に答える
1

文字列$stringがある場合は、を使用してみてください

substr_replace($string ,"",-1);

また

substr($string, 0, -1);

また

mb_substr($string, 0, -1);

$stringから最後の文字を削除します。

于 2012-05-01T19:26:54.233 に答える
0

'/'の場合、これはURLの最後の文字を置き換えます

concat(LEFT(url, LENGTH(url)-1),replace(right(url, 1),'/',''))
于 2014-12-18T08:55:29.810 に答える
0

私の場合、「1」のようないくつかの記号を削除する必要があります。または「2.」など。コードは次のとおりです。

/**
 * @param string $string
 *
 * @return string
 */
private function cutNumbers($string)
{
    for ($i = 1; $i < 20; $i++) {
        $position = strpos($string, $i . '.');

        if ($position === 0) {
            $string = substr($string, 2);
        }
    }

    return $string;
}

PS:もっと良い解決策があることは知っていますが、とにかく-修正プログラムは誰かを助けます。

于 2016-04-27T22:53:15.093 に答える
0

rtrim2つのパラメーター(トリミングされる文字列、削除される文字)で使用します

あなたの場合:

rtrim($str, '/');

于 2020-10-10T19:46:28.143 に答える