Web制作メモ -トップへ-

[PHP] 拡張子によって処理を分ける

PHP2014.12.11 09:44

PHPでファイル名から拡張子を取得するにはpathinfo()を使うと便利です。pathinfo()で返される連想配列のextensionに拡張子が格納されます。

さらに、拡張子は大文字か小文字の場合があるので、strtolower()で小文字に統一して、preg_match()を使えば、拡張子によって処理を分ける事ができます。

拡張子が対応しているかチェックする

<?php
function ExtCheck($path){ $p = pathinfo($path); $ext = strtolower($p['extension']); if(preg_match('/jpg|jpeg|jpe|jfif|png/', $ext)){ //許可する拡張子の場合の処理 echo $ext . 'は対応しています。'; }else{ //許可しない拡張子の場合の処理 echo $ext . 'は対応していません。'; } } echo ExtCheck('/img/test.jpg'); echo ExtCheck('test.png'); echo ExtCheck('test.gif');
?>

実行結果

jpgは対応しています。
pngは対応しています。
gifは対応していません。