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」の原因がわからない よくある原因 ヒアドキュメントの宣言"<<<"の前にスペースが入っていなかった! ヒアドキュメント内に配列を使ってて"{}"でくくることを忘れてた! 括弧を閉じ忘れてた!(だいたい...
PHPの配列でキーを再採番する方法 PHPの配列で歯抜けになったキーを再採番する方法 PHPでarray_uniqueなどの配列用関数を使うと、配列のキー(添字、要素名)が、連想配列でなく数値の場合、バラバラになる(連番にならない)ことがある。 これを、ちゃんと連番にしたい。いい方法はないか。 結論 sortをかます。...
PHPでComet:フォーカスの当たっていないウィンドウが更新されない... PHPとprototype.jsを使ってAjaxでCometなチャットを作ろうとした。 FireFoxで動作検証していたのだが、ブラウザの複数ウィンドウを立ち上げ、別マシンでもウィンドウを立ち上げて検証していたところ、フォーカスの当たっていない(アクティブでない)ウィンドウでは、TextAre...
Geeklogの管理画面で記事一覧に列を追加する... Geeklogで記事一覧に任意の列を追加する方法 わたくし、Geeklogの記事管理画面(story.php)で記事一覧を表示する際に、編集アイコン列の隣に新しい列を挿入したかったんです。 結論 story.phpで列の定義を行い、lib-admin.phpで各行の処理を定義する。 ...

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

シェアする

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