上傳的檔案真的是圖像嗎?如何在 PHP 中驗證映像檔。

Mary-Kate Olsen
發布: 2024-11-03 11:33:29
原創
222 人瀏覽過

Is the uploaded file really an image? How to verify image files in PHP.

在PHP 中驗證影像檔案

在PHP 中接收檔案時,出於安全原因,確保它們是真實影像至關重要。僅依靠檔案副檔名檢查可能是不可靠的,因為惡意使用者可以使用類似映像的副檔名重命名腳本。

使用 getimagesize()

getimagesize() 函數提供決定接收到的檔案是否為影像的綜合方法。它會傳回一個包含圖像資訊的數組,包括其寬度、高度和 MIME 類型。實作方法如下:

<code class="php">if (@is_array(getimagesize($mediapath))) {
    $image = true;
} else {
    $image = false;
}</code>
登入後複製

如果 getimagesize() 函數成功檢索到一組訊息,則表示該檔案是真實的圖像。否則,它可能是非圖像檔案。

範例輸出

以下是getimagesize() 的輸出範例:

Array (
[0] => 800
[1] => 450
[2] => 2
[3] => width="800" height="450"
[bits] => 8
[channels] => 3
[mime] => image/jpeg)
登入後複製

此輸出顯示該檔案確實是寬度為800 像素、高度為450 像素、MIME 類型為image/jpeg 的影像。

以上是上傳的檔案真的是圖像嗎?如何在 PHP 中驗證映像檔。的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板