2016-04-26 62 views
2

我想篩選一些擴展。 我有這個變量,它讓我的文件擴展名的文件夾中:如何在php中檢查某些擴展

$Extension = pathinfo($file, PATHINFO_EXTENSION); 

現在我想篩選一些擴展來查看;我做了一個變量:

$ViewFiles = array('jpg', 'png', 'gif', 'pdf', 'html'); 

如果擴展名是$ ViewFiles之一;顯示視圖圖標: 我試過這個實現,但它不工作:

if($Extension == $ViewFiles) { 
// echo view icon 
} 
else { 
// dont echo view icon 
} 

什麼是做這種正確的方法是什麼?

+0

你得到什麼錯誤?你是否嘗試回顯$ Extension? $ Extension是什麼回聲? – Webeng

+0

$ Extension的回聲給我輸出:** gif **或** jpg **或** png **等等...... –

+0

是否要過濾擴展名或文件類型? (擴展名不是文件類型的可靠指標;當然,如果你正在處理用戶輸入,則不是這樣) – jDo

回答

4

你快到了。嘗試使用in_array函數。

if (in_array(strtolower($Extension), $ViewFiles)) { // echo view icon }

+0

太棒了!現在它效果很好!感謝這個解決方案 –

2

至於in_array()解決方案的替代,你可以使用

$ViewFiles = array(
     'jpg' => 'jpg', 
     'png' => 'png', 
     'gif' => 'gif', 
     'pdf' => 'pdf', 
     'html' => 'html'); 

if (isset($ViewFiles[ $Extension ])) 
    // show view icon