php常用hash加密函数

yipeiwu_com7年前PHP代码库

本文实例讲述了php常用hash加密函数。分享给大家供大家参考。具体分析如下:

复制代码 代码如下:
$hash_list=hash_algos();  //返回注册的hash规则列表

print_r($hash_list); //显示结果

创建文件以计算哈希值:file_put_contents('example.txt', 'the quick brown fox jumped over the lazy dog.');

输出哈希值信息:

复制代码 代码如下:
echo hash_file('md5', 'example.txt');
 
$str="the quick brown fox jumped over the lazy dog.";      //定义字符串
echo hash('ripemd160',$str);           //生成哈希值
 
$ctx=hash_init('md5');          //初始化一个hash值
hash_update($ctx,'the quick brown fox');       //向哈希值灌注数据
hash_update($ctx,'jumped over the lazy dog.');      //向哈希值灌注数据
echo hash_final($ctx);          //输出最后的结果
 
$str="the quick brown fox jumped over the lazy dog.";    //定义字符串
$fp=tmpfile();            //创建一个临时文件
fwrite($fp,$str);            //将字符串写入到临时文件
rewind($fp);            //倒回文件指针的位置
$ctx=hash_init('md5');          //初始化一个hash值
hash_update_stream($ctx,$fp);         //向数据流中灌注数据
echo hash_final($ctx);          //输出结果
 
 
$str="the quick brown fox jumped over the lazy dog.";    //定义字符串
echo hash_hmac('ripemd160',$str,'secret');      //生成包含密钥的hash值
 
/*创建一个文件并将字符串写入其中*/
$file="example.txt";          //定义文件名
$str=" the quick brown fox jumped over the lazy dog.";   //定义字符串
file_put_contents($file,$str);        //向文件中写入字符串
echo hash_hmac_file('md5',$file,'secret');      //生成一个包含密钥的hash值
 
$ctx=hash_init('sha1');          //定义字符串
hash_update($ctx,'the quick brown fox jumped over the lazy dog.');  //向哈希值中灌注数据
echo hash_final($ctx);  //输出结果

希望本文所述对大家的PHP程序设计有所帮助。

相关文章

浅析php-fpm静态和动态执行方式的比较

本文实例讲述了php-fpm静态和动态执行方式的比较。分享给大家供大家参考,具体如下: 前段时间配置php-fpm的时候,无意间发现原来他还有两种执行方式。与Apache一样,他的进程数...

深入PHP autoload机制的详解

在使用PHP的OO模式开发系统时,通常大家习惯上将每个类的实现都存放在一个单独的文件里,这样会很容易实现对类进行复用,同时将来维护时也很便 利。这 也是OO设计的基本思想之一。在PHP5...

PHP基于PDO实现的SQLite操作类【包含增删改查及事务等操作】

本文实例讲述了PHP基于PDO实现的SQLite操作类。分享给大家供大家参考,具体如下: 直接代码: 注意:一定要写好数据库保存路径 <?php // sqlite分页...

解决PHP超大文件下载,断点续传下载的方法详解

最近导出的时候出现一个php内存溢出的问题,原因就是在于下载的时候读取生成的临时文件过大,PHP内存无法容纳,一开如是想到更改PHP内存限制,但是这个只是一个缓兵之计,于是想到了另外一个...

PHP线程的内存回收问题

当一个PHP线程结束时,当前占用的所有内存空间都会被销毁。那么如果这个线程不结束,怎么回收内存呢? refcount:引用技术器,可以理解为指向该个容器的指针个数吧。 is_ref:是否...