sha1_file
ファイルのSHA1ハッシュ値を計算します
テキストファイル「test.txt」のsha-1ハッシュを計算します:
<span class="token php language-php"><span class="token delimiter important"><?php</span> <span class="token variable">$ filename</span> <span class="token operator">=</span> <span class="token string double-quoted-string">"test.txt"</span> <span class="token punctuation">;</span> <span class="token variable">$ sha1file</span> <span class="token operator">=</span> <span class="token function">sha1_file</span> <span class="token punctuation">(</span> <span class="token variable">$ filename</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span> <span class="token keyword">echo</span> <span class="token variable">$ sha1file</span> <span class="token punctuation">;</span> <span class="token delimiter important">?></span></span>
上記のコードの出力:
AAF4C61DDCC5E8A2DABEDE0F3B482CD9AEA9434D
ファイルに「test.txt」のsha-1ハッシュを保存します。
<span class="token php language-php"><span class="token delimiter important"><?php</span> <span class="token variable">$ sha1file</span> <span class="token operator">=</span> <span class="token function">sha1_file</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"test.txt"</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span> <span class="token function">file_put_contents</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"sha1file.txt"</span> <span class="token punctuation">、</span> <span class="token variable">$ sha1file</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span> <span class="token delimiter important">?></span></span>
「test.txt」が変更されたかどうかをテストします(つまり、SHA-1が変更されたかどうか):
<span class="token php language-php"><span class="token delimiter important"><?php</span> <span class="token variable">$ sha1file</span> <span class="token operator">=</span> <span class="token function">file_get_contents</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"sha1file.txt"</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span> <span class="token keyword">if</span> <span class="token punctuation">(</span> <span class="token function">sha1_file</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"test.txt"</span> <span class="token punctuation">)</span> <span class="token operator">==</span> <span class="token variable">$ sha1file</span> <span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token keyword">エコー</span><span class="token string double-quoted-string">「ファイルは大丈夫です。」</span> <span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token keyword">それ以外</span> <span class="token punctuation">{</span> <span class="token keyword">エコー</span><span class="token string double-quoted-string">「ファイルが変更されました。」</span> <span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token delimiter important">?></span></span>
上記のコードの出力:
ファイルは大丈夫です。