ホームページ  >  記事  >  バックエンド開発  >  文字列関数を使用してファイル拡張子を抽出する PHP 関数アプリケーション

文字列関数を使用してファイル拡張子を抽出する PHP 関数アプリケーション

青灯夜游
青灯夜游オリジナル
2021-08-18 19:06:013607ブラウズ

前回の記事「配列を使ってファイル拡張子を出力するPHP関数応用」では、配列を使ってファイル拡張子を取得する2つの方法を紹介しました。今回は引き続きファイル拡張子の取得方法と文字列関数の使い方を紹介しますので、興味のある方はぜひ学んでみてください~

まず、上記を思い出してみましょう。完全なファイル形式は、 文字「.」 より前の内容、 文字「.」 、および 文字「.」 # の後の内容の 3 つの部分に分けることができます。 ## 。

今回も、ファイル拡張子を取得するには

文字「. を使用する必要があります。以下に、文字列関数を使用してファイル拡張子を取得する 3 つの方法を紹介します。

まず、文字列関数を使用してファイル拡張子を取得する最初の方法を見てみましょう

<?php
function getExtension($filename){
         $ext = strrchr($filename,&#39;.&#39;);
         return $ext;
}
$filename="dir/upload/image.gif";
echo getExtension($filename);
?>

上記のキー コードを分析します:


strrchr($filename,'.') は、文字列 $filename 内の文字「.」を文字列の末尾までのすべての文字を返すことを意味します。したがって、出力結果は次のようになります。

文字列関数を使用してファイル拡張子を抽出する PHP 関数アプリケーション

次に、文字列関数を使用してファイル拡張子を取得する 2 番目の方法を見てみましょう

<?php
function getExtension($filename){
    $pos = strrpos($filename, &#39;.&#39;);
    $ext = substr($filename, $pos);
    return $ext;
}
$filename="dir/upload/image.gif";
echo getExtension($filename);
?>

出力結果は次のとおりです:

文字列関数を使用してファイル拡張子を抽出する PHP 関数アプリケーション##OK、上記のキー コードを分析してください:

    最初に
  • strrpos を使用します($filename, '.')

    文字列 $filename$pos 内で文字「.」が最後に出現した位置を取得し、次に $ pos は、substr() 関数の 2 番目のパラメーターとして使用されます。

  • substr($filename, $pos)

    は、$pos$filename で設定された位置に基づいて文字列のインターセプトを開始します。 $pos から文字列の末尾までのすべての文字を返します。したがって、「.gif」が出力されます。

  • 文字「.」を含まない拡張子を取得する場合、つまり「
gif

」を返す場合は、 を設定できます。 substr($filename, $ pos 1) なので、出力結果は次のようになります:

文字列関数を使用してファイル拡張子を抽出する PHP 関数アプリケーション

最後に、文字列関数を使用して次のことを行う 3 番目の方法を見てみましょう。ファイル拡張子を取得します

<?php
function getExtension($filename){
    $filename = strrev($filename);
    $ext = strstr($str,&#39;.&#39;,true);
    return strrev($ext);
}
$filename="dir/upload/image.gif";
echo getExtension($filename);
?>
上記のキー コードを分析します:


strstr($filename,'.',true)

文字列を取得できます$filename 先頭から の最初の出現箇所から文字 "." までのすべての文字、つまり文字 "." より前の内容を取得します。

文字列関数を使用してファイル拡張子を抽出する PHP 関数アプリケーションこれは私たちの期待と一致しません。このとき、私は考えました。文字「」より前の内容を取得しているためです。 " を選択し、文字列を反転して展開します。名前の文字は、文字 "." より少し前にあります。

したがって、最初に

strrev($filename)

を使用して文字列 $filename を反転し、次に strstr($filename,'.',true ) を使用します。 文字「.」より前の内容を取得するには、今度は出力して結果を確認します:

文字列関数を使用してファイル拡張子を抽出する PHP 関数アプリケーションOK、逆拡張子を取得し、

strrev( $filename)

文字列を再度反転して、通常の拡張子を取得できるようにします。出力を見てください:

文字列関数を使用してファイル拡張子を抽出する PHP 関数アプリケーション
わかりました。今のところはこれです。他に知りたいことがあれば、ここをクリックしてください。 → →

php ビデオチュートリアル

最後に、古典的なコース「

PHP 文字列処理 (翡翠少女般若心経編)

」を読むことをお勧めします。無料です。ぜひ学んでください。 !

以上が文字列関数を使用してファイル拡張子を抽出する PHP 関数アプリケーションの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。