This library allows you to easily scan file with ClamAv into you project
- PHP 5.6+
- PHP Socket
$ composer req ylly/php-clamav-scan
Create Clamav object :
$clamav = ClamavFactory::createFromYamlFile('/some/config/file.yaml');
You can check if clamav is available with PING command.
$clamav->isAvailable();
Get version of clamav
$clamav->getVersion();
Note : if clamav is unavailable, the function throw an FailedSocketConnectionException
// scan path
$result = $clamav->scanPath($path);
$result
is instance of ScanResponse
Status combine with binary or ( | ) :
Clamav::CLAMAV_INFECT
Clamav::CLAMAV_ERROR
Clamav::CLAMAV_CLEAN
Use helper for check status
isInfected()
isUnckeck()
isClean()
hasSomeProblems()
Note : if clamav is unavailable, the function throw an FailedSocketConnectionException
address: '/var/run/clamav/clamd.sock' # Unix socket or IPv4 / IPv6
port: 3310 # optional for IP
socket_length: 200000 # optionnal