php 的加密函数 md5,crypt,base64_encode 等使用介绍


Posted in PHP onApril 09, 2012

不可逆的加密函数为:md5()、crypt()
md5() 用来计算 MD5 哈稀。语法为:string md5(string str);
crypt() 将字符串用 UNIX 的标准加密 DES 模块加密。这是单向的加密函数,无法解密。欲比对字符串,将已加密的字符串的头二个字符放在 salt 的参数中,再比对加密后的字符串。语法为:string crypt(string str, string [salt]);
可逆转的加密为:base64_encode()、urlencode() 相对应的解密函数:base64_decode() 、urldecode()

base64_encode() 将字符串以 MIME BASE64 编码。此编码方式可以让中文字或者图片也能在网络上顺利传输。语法为string base64_encode(string data); 它的解密函数为:string base64_decode(string encoded_data); 将复回原样
urlencode() 将字符串以 URL 编码。例如空格就会变成加号。语法为:string urlencode(string str);
它的解密函数为:string urldecode(string str); 将复回原样

看段代码:

<?php 
define("str","墨剑"); 
echo 'md5 加密后的结果为:'.md5(str).'<br>';//md5 加密 
echo 'crypt加密后的结果为:'.crypt(str,str).'<br>';// crypt加密 
$base64encode=base64_encode(str);// base64_encode() 加密 
echo 'base64_encode加密后的结果为:'.$base64encode.'<br>'; 
echo 'base64_decode解密后的结果为:'.base64_decode($base64encode).'<br>'; //base64_decode()解密 
$urlencode=urlencode(str); //urlencode() 加密 
echo 'urlencode加密后的结果为:'.$urlencode.'<br>'; 
echo 'urldecode解密后的结果为:'.urldecode($urlencode).'<br>';//urldecode() 解密 
?>

输出的结果为:
md5 加密后的结果为:ea796af15c74e90faeba49576fa7984b
crypt加密后的结果为:墨ylCzgTtYXPs
base64_encode加密后的结果为:xKu9ow==
base64_decode解密后的结果为:墨剑
urlencode加密后的结果为:%C4%AB%BD%A3
urldecode解密后的结果为:墨剑
PHP 相关文章推荐
非常不错的MySQL优化的8条经验
Mar 24 PHP
深入php函数file_get_contents超时处理的方法详解
Jun 03 PHP
PHP中怎样保持SESSION不过期 原理及方案介绍
Aug 08 PHP
解析数组非数字键名引号的必要性
Aug 09 PHP
PHP中上传多个文件的表单设计例子
Nov 19 PHP
php树型类实例
Dec 05 PHP
php实现随机显示图片方法汇总
May 21 PHP
PHP查询附近的人及其距离的实现方法
May 11 PHP
PHP简单字符串过滤方法示例
Sep 04 PHP
PHP入门教程之图像处理技巧分析
Sep 11 PHP
PHP实现的观察者模式实例
Jun 21 PHP
thinkPHP5实现数据库添加内容的方法
Oct 25 PHP
PHP压缩html网页代码(清除空格,换行符,制表符,注释标记)
Apr 02 #PHP
PHP文件注释标记及规范小结
Apr 01 #PHP
用PHP读取超大文件的实例代码
Apr 01 #PHP
PHP新手用的Insert和Update语句构造类
Mar 31 #PHP
PHP中SESSION使用中的一点经验总结
Mar 30 #PHP
PHP __autoload()方法真的影响性能吗?
Mar 30 #PHP
phpmyadmin3 安装配置图解教程
Mar 29 #PHP
You might like
浅析php与数据库代码开发规范
2013/08/08 PHP
PHP+Memcache实现wordpress访问总数统计(非插件)
2014/07/04 PHP
php过滤HTML标签、属性等正则表达式汇总
2014/09/22 PHP
PHP redis实现超迷你全文检索
2017/03/04 PHP
[企业公众号]升级到[企业微信]之后发送消息失败的解决方法
2017/06/30 PHP
js确定对象类型方法
2012/03/30 Javascript
jquery ajax中使用jsonp的限制解决方法
2013/11/22 Javascript
JavaScript lastIndexOf方法入门实例(计算指定字符在字符串中最后一次出现的位置)
2014/10/17 Javascript
使用JavaScript判断手机浏览器是横屏还是竖屏问题
2016/08/02 Javascript
微信小程序 增、删、改、查操作实例详解
2017/01/13 Javascript
AngularJS学习笔记之表单验证功能实例详解
2017/07/06 Javascript
jQuery实现点击下拉框中的值累加到文本框中的方法示例
2017/10/28 jQuery
AngularJS下$http服务Post方法传递json参数的实例
2018/03/29 Javascript
快速解决brew安装特定版本flow的问题
2018/05/17 Javascript
原生JS实现旋转轮播图+文字内容切换效果【附源码】
2018/09/29 Javascript
python模块restful使用方法实例
2013/12/10 Python
Python调用微信公众平台接口操作示例
2017/07/08 Python
Python使用requests发送POST请求实例代码
2018/01/25 Python
python3中获取文件当前绝对路径的两种方法
2018/04/26 Python
Python使用爬虫爬取静态网页图片的方法详解
2018/06/05 Python
关于python列表增加元素的三种操作方法
2018/08/22 Python
Python3匿名函数lambda介绍与使用示例
2019/05/18 Python
python 求1-100之间的奇数或者偶数之和的实例
2019/06/11 Python
如何在mac环境中用python处理protobuf
2019/12/25 Python
浅谈spring boot 集成 log4j 解决与logback冲突的问题
2020/02/20 Python
Python多线程:主线程等待所有子线程结束代码
2020/04/25 Python
Python带参数的装饰器运行原理解析
2020/06/09 Python
如何避免常见的6种HTML5错误用法
2017/11/06 HTML / CSS
华纳兄弟工作室的官方授权商店:WB Shop
2018/11/30 全球购物
解释DataSet(ds) 和 ds as DataSet 的含义
2014/07/27 面试题
什么是动态端口(Dynamic Ports)?动态端口的范围是多少?
2014/12/12 面试题
软件测试企业面试试卷
2016/07/13 面试题
优秀员工获奖感言
2014/03/01 职场文书
思想品德课教学反思
2016/02/24 职场文书
php 原生分页
2021/04/01 PHP
MySQL InnoDB ReplicaSet(副本集)简单介绍
2021/04/24 MySQL