如何使用 PHP 有效檢查檔案副檔名
檔案副檔名驗證對於確保安全檔案上傳至關重要。在 PHP 中,pathinfo() 函數提供了一種提取檔案副檔名的便捷方法。但是,優化驗證過程以提高效率至關重要。
原始方法:
提供的程式碼利用 pathinfo()函數提取檔案副檔名並進行比較對照特定值來確定其有效性:
$filename = $_FILES['video_file']['name']; $ext = pathinfo($filename, PATHINFO_EXTENSION); if ($ext !== 'gif' || $ext !== 'png' || $ext !== 'jpg') { echo 'error'; }
潛力效率低下:
但是,如果存在大量允許的擴展,此方法可能效率不高。使用多重比較單獨檢查每個擴展名的計算量很大。
最佳化方法:
為了提高效率,建議使用陣列來儲存允許的檔案副檔名:
$allowed = array('gif', 'png', 'jpg'); $filename = $_FILES['video_file']['name']; $ext = pathinfo($filename, PATHINFO_EXTENSION); if (!in_array($ext, $allowed)) { echo 'error'; }
這種方法透過使用in_array() 函數來檢查擴展名是否存在,從而消除了多次比較的需要存在於允許的擴展數組中。這顯著減少了所需的操作數量,並使驗證過程更快、更有效率。
以上是如何在PHP中有效率地檢查檔案副檔名?的詳細內容。更多資訊請關注PHP中文網其他相關文章!