WEB/システム/IT技術ブログ

PHPの関数substrを活用したさまざまな文字列切り出し方法

PHPで文字列操作によく使うsubstrですが、しくみは単純ですが少し掘り下げてみるといろいろとできることに改めて関心しました。

まず、通常のように

echo substr("ABCDEFGHIJ", 5);

の結果は「FGHIJ」

echo substr("ABCDEFGHIJ", 2, 3);

の結果は「CDE」となります。

第一引数で処理対象となる文字列、第二引数で切り出す位置、第三引数で切り出すサイズを指定するんですね。ここで一歩踏み込むと

echo substr("ABCDEFGHIJ", -3);

の結果は「HIJ」

echo substr("ABCDEFGHIJ", 5, -3);

の結果は「FG」となります。これは「substr(“ABCDEFGHIJ”, 5)」の結果が「FGHIJ」なのに対して、末尾の3文字「HIJ」を差し引くことになるんですね。


今回、これらを活用してシステムで自動的に出力されるサムネイル画像のファイル名をしました。
例えば以下のようにして、任意の画像ファイル名「sample.jpg」から「sample_tmb.jpg」というファイル名を生成します。

echo substr("sample.jpg", 0, -4) . "_tmb" . substr("sample.jpg", -3);

※もちろん任意のファイル名は拡張子が3文字というのが条件です。

B!

Comment

コメントはありません

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

Monthly Archives