例
テキストファイルのSHA-1ハッシュ計算"test.txt" :
<?php
$filename = "test.txt";
$sha1file = sha1_file($filename);
echo $sha1file;
?>
上記のコードの出力は次のようになります。
aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d
定義と使用法
sha1_file()関数は、ファイルのSHA-1ハッシュを計算します。
sha1_file()関数は、米国セキュアハッシュアルゴリズム1を使用しています。
RFC 3174から-米国セキュアハッシュアルゴリズム1: "SHA-1 produces a 160-bit output called a message digest. The message digest can then, for example, be input to a signature algorithm which generates or verifies the signature for the message. Signing the message digest rather than the message often improves the efficiency of the process because the message digest is usually much smaller in size than the message. The same hash algorithm must be used by the verifier of a digital signature as was used by the creator of the digital signature."
この関数は、計算されたSHA-1ハッシュ成功した場合に、失敗した場合にFALSEを返します。
構文
sha1_file( file,raw )
パラメーター | 説明 |
---|---|
file | 必須。 ファイルが計算されます |
raw | 任意。 ヘキサまたはバイナリ出力形式を指定するブール値。
|
技術的な詳細
戻り値: | 成功した場合に計算されたSHA-1ハッシュを返し、失敗した場合にFALSE |
---|---|
PHPバージョン: | 4.3.0+ |
変更履歴: | 生のパラメータは、PHP 5.0でオプションとなりました PHP 5.1の時点で、それを使用することが可能であるsha1_file()のラッパーとを、例えばsha1_file("http://w3ii.com/..") |
その他の例
例1
SHA-1ハッシュ保管してください"test.txt"ファイルの中に:
<?php
$sha1file = sha1_file("test.txt");
file_put_contents("sha1file.txt",$sha1file);
?>
テストする場合"test.txt" (SHA-1ハッシュが変更された場合には)変更されています。
<?php
$sha1file = file_get_contents("sha1file.txt");
if (sha1_file("test.txt") == $sha1file)
{
echo "The file is ok.";
}
else
{
echo "The file has been changed.";
}
?>
上記のコードの出力は次のようになります。
The file is ok.
<PHPの文字列のリファレンス