函式名:openssl_digest()
適用版本:openssl_digest() 函式在 PHP 5.3.0 及以上版本可用。
用法:openssl_digest() 函式用於計算給定資料的摘要。它可以使用多種加密演算法來生成不同型別的摘要。
語法: string openssl_digest ( string $data , string $method [, bool $raw_output = FALSE ] )
引數:
- $data:要計算摘要的資料,可以是字串或二進位制資料。
- $method:指定要使用的加密演算法,常用的演算法包括:MD5、SHA1、SHA256、SHA384、SHA512等。具體支援的演算法取決於 OpenSSL 庫的支援。
- $raw_output(可選):設定為 TRUE 時,返回原始二進位制資料摘要;設定為 FALSE 時(預設),返回十六進位制編碼的摘要。
返回值:返回計算得到的摘要,如果失敗則返回 FALSE。
示例:
// 計算字串的 MD5 摘要
$data = "Hello, world!";
$digest = openssl_digest($data, "md5");
echo "MD5 Digest: " . $digest . "\n";
// 計算檔案的 SHA256 摘要
$file = "/path/to/file.txt";
$contents = file_get_contents($file);
$digest = openssl_digest($contents, "sha256");
echo "SHA256 Digest: " . $digest . "\n";
以上示例將輸出:
MD5 Digest: 6cd3556deb0da54bca060b4c39479839
SHA256 Digest: 2c6ee24b09816a6f14f95d1698b24ead7d4eb462d8c51a10f7e924ddec8bce26
注意:openssl_digest() 函式依賴於 OpenSSL 擴充套件庫,因此在使用該函式之前,需要確保 OpenSSL 擴充套件已正確安裝和啟用。