PHPでファイルの拡張子を調べる方法

シェアする

  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存

アップロード済みローカル・ファイルのMIMEを調べたい

答え

pathinfo()関数で、返ってきた配列の”extension”の値を調べればよろし

$sFilePath  = "./hogehoge.png";
if(File_Exists($sFilePath)){
    $aFileInfo  = pathinfo( realpath( $sFilePath ) ); /* ここに注目 */
    echo $aFileInfo['extension'];
}

所感

更新システムなどで、ファイルのアップローダーをつけたりした場合に、拡張子を調べる必要があった。

POST直後であれば、$_FILES[‘type’]を覗けばわかるのですが、すでにアップロードされているファイルの拡張子が欲しいのです。

特に画像のリサイズをする場合にファイルの種類を知る必要があって。

しかし、ロリポップのサーバでは mime_content_type()関数は使えないし、PECLのFileinfo()関数も入っていない。これは困っちんぐ。

やはり、正規表現で拡張子を調べるしかないのか。

でも、わかれば簡単だった。とほほ。

関連記事

「T_ENCAPSED_AND_WHITESPACE」エラー時に注意すべき点... 「T_ENCAPSED_AND_WHITESPACE」の原因がわからない よくある原因 ヒアドキュメントの宣言"<<<"の前にスペースが入っていなかった! ヒアドキュメント内に配列を使ってて"{}"でくくることを忘れてた! 括弧を閉じ忘れてた!(だいたい...
xrea.comサーバにPEARをインストールする方法... Monoar / Pixabay CGIモードでgo-pear.phpを実行 xrea.comで、PEARのWEBインストーラーであるgo-pear.phpを使ってインストールしたかったのですが、何度試してもtempフォルダの権限が変わってしまい、エラーになってしまいます。 結論...
PHPで画像を動的に出力する際にキャッシュさせない... PHPのGDを使って合成した画像を出力するスクリプトを作って、テスト用にタグをたくさんならべて、変化をチェックしてみた。 しかし、URLが変わらないためか、いくつかの画像が表示しきれなかったり、他と同じだったり・・・ 単発でスクリプトを叩くと、ちゃんと表示されるので...
PHPの多次元連想配列をマージする 添え字付き多次元配列の結合 一般的に配列のマージ(結合)は"+"(プラス)を使うのが一番簡単だったりするのですが、一部のキーが同じ(添え字のダブりがある)配列を結合する場合に、いささか問題がおきるケースがあります。 array_merge_recursive()関数や array_d...

スポンサーリンク
レクタングル(大)広告

シェアする

  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存
スポンサーリンク
レクタングル(大)広告