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()関数も入っていない。これは困っちんぐ。

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

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

関連記事

PHPでComet:フォーカスの当たっていないウィンドウが更新されない... PHPとprototype.jsを使ってAjaxでCometなチャットを作ろうとした。 FireFoxで動作検証していたのだが、ブラウザの複数ウィンドウを立ち上げ、別マシンでもウィンドウを立ち上げて検証していたところ、フォーカスの当たっていない(アクティブでない)ウィンドウでは、TextAre...
私のGeeklogのMVC的使い方(WebAPI化) GeeklogをWEBサービス的にAPI化する 2013/09/11 追記:5年半前の記事ですっかり放置していたのですが、なんと恐れ多くもGeeklogのivyweさんからコメントをいただきました。m(_ _;)m ガクガクブルブル すっかりKEINOSはGeeklog離れしていたのですが、...
PHPで画像を動的に出力する際にキャッシュさせない... PHPのGDを使って合成した画像を出力するスクリプトを作って、テスト用にタグをたくさんならべて、変化をチェックしてみた。 しかし、URLが変わらないためか、いくつかの画像が表示しきれなかったり、他と同じだったり・・・ 単発でスクリプトを叩くと、ちゃんと表示されるので...
PHPの多次元連想配列をマージする 添え字付き多次元配列の結合 一般的に配列のマージ(結合)は"+"(プラス)を使うのが一番簡単だったりするのですが、一部のキーが同じ(添え字のダブりがある)配列を結合する場合に、いささか問題がおきるケースがあります。 array_merge_recursive()関数や array_d...

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

シェアする

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