在使用者收到發送過來的檔案後, 要能夠偵測出這個檔案是否是病毒, 核心的軟體是clamav , 可以在linux命令列執行,偵測檔案或目錄裡的病毒
推薦:PHP影片教學
下載和安裝可以參考其他技術文章。
要注意的是要開啟下設定檔中的
LocalSocket /tmp/clamd.socket
執行時間是以守護程式的方式執行一個clamd的程式, 偵測的時候只需要呼叫下面指令
/usr/local/clamav-0.102.1/bin/clamdscan
回應的資訊是下面的內容
/usr/local/clamav-0.102.1/bin/clamdscan /tmp/attachment_04613DE5A94DD00E1F48F7A5D39A802C9700000000000001_4 /tmp/attachment_04613DE5A94DD00E1F48F7A5D39A802C9700000000000001_4: Xls.Virus.Mailcab-6702020-0 FOUND ----------- SCAN SUMMARY ----------- Infected files: 1 Time: 0.176 sec (0 m 0 s)
在PHP中呼叫exec函數, 呼叫上面的指令就可以實作偵測了
$cmd="/usr/local/clamav-0.102.1/bin/clamdscan {$file}"; exec($cmd,$output);
以上是關於檢測檔案是否有病毒的PHP實作邏輯的詳細內容。更多資訊請關注PHP中文網其他相關文章!