Files
InvoiceShelf/app/Support/Module/ModuleAssetVersion.php
T

21 lines
471 B
PHP

<?php
namespace App\Support\Module;
class ModuleAssetVersion
{
public const HASH_LENGTH = 12;
public static function forPath(string $path): ?string
{
$hash = is_file($path) ? hash_file('sha256', $path) : false;
return is_string($hash) ? substr($hash, 0, self::HASH_LENGTH) : null;
}
public static function forContents(string $contents): string
{
return substr(hash('sha256', $contents), 0, self::HASH_LENGTH);
}
}