前回の記事「配列を使ってファイル拡張子を出力するPHP関数応用」では、配列を使ってファイル拡張子を取得する2つの方法を紹介しました。今回は引き続きファイル拡張子の取得方法と文字列関数の使い方を紹介しますので、興味のある方はぜひ学んでみてください~
まず、上記を思い出してみましょう。完全なファイル形式は、 文字「.」 より前の内容、 文字「.」 、および 文字「.」 # の後の内容の 3 つの部分に分けることができます。 ## 。
今回も、ファイル拡張子を取得するには 文字「.」
を使用する必要があります。以下に、文字列関数を使用してファイル拡張子を取得する 3 つの方法を紹介します。
まず、文字列関数を使用してファイル拡張子を取得する最初の方法を見てみましょう
<?php function getExtension($filename){ $ext = strrchr($filename,'.'); return $ext; } $filename="dir/upload/image.gif"; echo getExtension($filename); ?>上記のキー コードを分析します:
strrchr($filename,'.') は、文字列
$filename 内の文字「
.」を文字列の末尾までのすべての文字を返すことを意味します。したがって、出力結果は次のようになります。
次に、文字列関数を使用してファイル拡張子を取得する 2 番目の方法を見てみましょう
<?php function getExtension($filename){ $pos = strrpos($filename, '.'); $ext = substr($filename, $pos); return $ext; } $filename="dir/upload/image.gif"; echo getExtension($filename); ?>出力結果は次のとおりです:
##OK、上記のキー コードを分析してください:
文字列 $filename
$pos
内で文字「.」が最後に出現した位置を取得し、次に $ pos
は、substr() 関数の 2 番目のパラメーターとして使用されます。
は、$pos
$filename で設定された位置に基づいて文字列のインターセプトを開始します。
、$pos
から文字列の末尾までのすべての文字を返します。したがって、「.gif
」が出力されます。
」を返す場合は、 を設定できます。 substr($filename, $ pos 1)
なので、出力結果は次のようになります:
<?php
function getExtension($filename){
$filename = strrev($filename);
$ext = strstr($str,'.',true);
return strrev($ext);
}
$filename="dir/upload/image.gif";
echo getExtension($filename);
?>
上記のキー コードを分析します:
文字列を取得できます$filename 先頭から
の最初の出現箇所から文字 ".
" までのすべての文字、つまり文字 ".
" より前の内容を取得します。
これは私たちの期待と一致しません。このとき、私は考えました。文字「」より前の内容を取得しているためです。 " を選択し、文字列を反転して展開します。名前の文字は、文字 "." より少し前にあります。
したがって、最初に
strrev($filename) を使用して文字列 $filename
を反転し、次に strstr($filename,'.',true ) を使用します。
文字「.」より前の内容を取得するには、今度は出力して結果を確認します:
OK、逆拡張子を取得し、
strrev( $filename)文字列を再度反転して、通常の拡張子を取得できるようにします。出力を見てください:
わかりました。今のところはこれです。他に知りたいことがあれば、ここをクリックしてください。 → →
」を読むことをお勧めします。無料です。ぜひ学んでください。 !
以上が文字列関数を使用してファイル拡張子を抽出する PHP 関数アプリケーションの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。