функция
since 3.7.0
verify_file_md5()
Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.
Сигнатура
verify_file_md5( string $filename, string $expected_md5 ): bool|WP_Error
Описание
Вычисляет MD5-хеш файла и сравнивает его с ожидаемым значением.
Параметры
$filename
string
обязательный
Имя файла, MD5-хеш которого нужно проверить.
$expected_md5
string
обязательный
Ожидаемый MD5-хеш файла: либо необработанный md5 в кодировке base64, либо md5 в шестнадцатеричной кодировке.
Возвращаемое значение
bool|WP_Error
WP_Error
Исходный код
wp-admin/includes/file.php:1362
function verify_file_md5( $filename, $expected_md5 ) {
if ( 32 === strlen( $expected_md5 ) ) {
$expected_raw_md5 = pack( 'H*', $expected_md5 );
} elseif ( 24 === strlen( $expected_md5 ) ) {
$expected_raw_md5 = base64_decode( $expected_md5 );
} else {
return false; // Unknown format.
}
$file_md5 = md5_file( $filename, true );
if ( $file_md5 === $expected_raw_md5 ) {
return true;
}
return new WP_Error(
'md5_mismatch',
sprintf(
/* translators: 1: File checksum, 2: Expected checksum value. */
__( 'The checksum of the file (%1$s) does not match the expected checksum value (%2$s).' ),
bin2hex( $file_md5 ),
bin2hex( $expected_raw_md5 )
)
);
}
История изменений
| Версия | Описание |
|---|---|
| 3.7.0 | Introduced. |

