ViaThinkSoft CodeLib
Dieser Artikel befindet sich in der Kategorie:
CodeLib → Programmierhilfen → PHP
function create_sfv($sfv_file, $files) {
$out = chr(0xEF).chr(0xBB).chr(0xBF); // UTF-8 BOM
$out .= "; Generated by ViaThinkSoft\r\n";
foreach ($files as $file) {
$crc32 = strtoupper(crc32_file($file));
$out .= "$file $crc32\r\n";
}
file_put_contents($sfv_file, $out);
}
function swapEndianness($hex) {
return implode('', array_reverse(str_split($hex, 2)));
}
function crc32_file($filename, $rawOutput = false) {
$out = bin2hex(hash_file ('crc32b', $filename , true));
if (hash('crc32b', 'TEST') == 'b893eaee') {
// hash_file() in PHP 5.2 has the wrong Endianess!
// https://bugs.php.net/bug.php?id=47467
$out = swapEndianness($out);
}
return $out;
}
Daniel Marschall
ViaThinkSoft Mitbegründer
ViaThinkSoft Mitbegründer