ホームページ >バックエンド開発 >PHPチュートリアル >PHPでファイル拡張子を取得する方法、_PHPチュートリアル
を取得する方法
方法は2つあります
1. $img が画像ファイル名の場合
リーリー次に、php配列を使用し、最初にファイル名の文字列を配列に読み取ります
リーリー他の友達がまとめた方法も添付します:
リーリー上記のメソッドをざっと見たところ、すべて機能しているようです。特にメソッド 1 と 2 は、pathinfo に 2 番目のパラメータがあることを知らなかった前から使用していました。しかし、よく考えてみると、最初の 4 つの方法にはさまざまな欠点があります。ファイル拡張子を完全に正しく取得するには、次の 3 つの特殊な状況に対処できなければなりません。
明らかに: 1 と 2 は 3 番目の状況を処理できず、3 は最初と 3 番目の状況を正しく処理できません。 4 は正しく処理されますが、拡張子が存在しない場合は警告が発行されます。方法 5 のみが最も正しい方法です。ちなみに、 pathinfo メソッドを見てください。公式サイトでは次のように紹介されています
最大 4 つの要素を含む配列が返されますが、常に 4 つあるとは限りません。たとえば、拡張機能がない場合、拡張要素は存在しないため、4 番目のメソッドは警告のみを検出します。ただし、phpinfo は 2 番目のパラメータもサポートしています。定数を渡して、返されるデータの特定の部分を指定できます:
これら 4 つの定数の値はそれぞれ 1、2、4、8 です。最初は OR 演算を通じて複数の値を指定できると考えました。
pathinfo($file, PATHINFO_EXTENSION | PATHINFO_FILENAME);
後で、これが機能しないことがわかりました。いくつかの OR 定数のうちの最小のものしか返されません。つまり、4 つのフラグ ビットの最小ビットは定数 1 です。