开发者社区> jefferyjob> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

PHP加密与解密

简介: 一、不可逆的加密函数为:md5()、crypt()  md5() 用来计算 MD5 哈稀。语法为:string md5(string str);  crypt() 将字符串用 UNIX 的标准加密 DES 模块加密。这是单向的加密函数,无法解密。欲比对字符串,将已加密的字符串的头二个字符放在 salt 的参数中,再比对加密后的字符串。语法为:string crypt(string st
+关注继续查看
一、不可逆的加密函数为: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解密后的结果为:墨剑 






注:加号处理:str_replace('+', '%2b', base64_encode(serialize($string)));

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
PHP6种加密方法介绍
PHP6种加密方法
1142 0
在CentOS上安装搭建PHP+Apache+Mysql的服务器环境方法
本篇给大家分享一下在CentOS上安装搭建PHP+Apache+Mysql的服务器环境方法,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。
1316 0
LNMP(Linux+Nginx+PHP+MySQL)生产源码部署实战
日常工作中,部署Nginx+PHP是非常普通的一个场景,如果有一个最佳实践,每次可以直接复制粘贴就好了。本文正是完全生产实践的方式。Nginx和PHP均推荐使用源码安装,MySQL推荐直接使用官方提供编译好的二进制文件,性能是最佳的,除非你可以非常专业的进行MySQL编译的定制。
1057 0
CentOS7 源码安装nginx+php+mysql+redis--shell脚本
centos7源码安装 nginx+php+mysql+redis 复制文中shell脚本,登录自己的服务器保存为 install.sh 执行如下命令 chmod +x install.sh ./install.sh
1946 0
centos下 Apache、php、mysql默认安装路径
apache: 如果采用RPM包安装,安装路径应在 /etc/httpd目录下 apache配置文件:/etc/httpd/conf/httpd.conf Apache模块路径:/usr/sbin/apachectl web目录:/var/www/html 如果采用源代码安装,一般默认安装在/usr/local/apache2目录下 php: 如果采用RPM包安装,安装路
3119 0
+关注
jefferyjob
继承,是幸福的延续;重载,是幸福的重生。
文章
问答
文章排行榜
最热
最新
相关电子书
更多
PHP安全开发_从白帽角度做安全
立即下载
复杂PHP系统性能瓶颈排查及优化
立即下载
PHP与APM_技术内幕和最佳实践
立即下载