The input $filetype is the file extension, so if we say it's PHP $def should be equal to "Web". But the output is just "Image" no matter what filetype is in the input.
$filetype = "PHP";
switch(strtolower($filetype)) {
case ("jpeg" || "jpg" || "png" || "ico" || "gif" || "svg" || "ps" || "psd" || "tif" || "tiff" || "ai" || "bmp"):
$def = 'Image';
break;
case ("aif" || "cda" || "mid" || "midi" || "mp3" || "mpa" || "ogg" || "wav" || "wma" || "wpl"):
$def = 'Audio';
break;
case ("7z" || "arj" || "deb" || "pkg" || "rar" || "gz" || "tar.gz" || "z" || "zip"):
$def = 'Archive';
break;
case ("bin" || "dmg" || "iso" || "toast" || "vcd"):
$def = 'Disc';
break;
case ("csv" || "dat" || "db" || "dbf" || "log" || "mdb" || "sav" || "sql" || "tar" || "xml"):
$def = 'Data';
break;
case ("apk" || "bat" || "cgi" || "pl" || "com" || "exe" || "gadget" || "jar" || "py" || "wsf"):
$def = 'Executable';
break;
case ("fnt" || "fon" || "otf" || "ttf"):
$def = 'Font';
break;
case ("asp" || "aspx" || "cer" || "cfm" || "css" || "htm" || "html" || "js" || "jsp" || "part" || "php" || "rss" || "xhtml"):
$def = 'Web';
break;
case ("key" || "odp" || "pps" || "ppt" || "pptx"):
$def = 'Presentation';
break;
case ("c" || "class" || "cpp" || "cs" || "h" || "java" || "sh" || "swift" || "vb"):
$def = 'Programming';
break;
case ("ods" || "xlr" || "xls" || "xlsx"):
$def = 'Spreadsheet';
break;
case ("3g2" || "3gp" || "avi" || "flv" || "h264" || "m4v" || "mkv" || "mov" || "mp4" || "mpg" || "mpeg" || "rm" || "swf" || "vob" || "wmv"):
$def = 'Video';
break;
case ("doc" || "docx" || "odt" || "pdf" || "rtf" || "tex" || "txt" || "wks" || "wps" || "wpd"):
$def = 'Document';
break;
default:
$def = '';
}
echo $def;
How do i get the correct $def output from the switch?