php语言中的几种加密函数

更新时间:2019-10-19 16:59:45 来源:青锋建站 作者:青锋建站
  php网站开发语言为我们提供了丰富的加密API,使用这些PHP加密函数可以根据使用场景选择合适的加密算法来处理加密过程,以下是青锋建站给大家总结的PHP中的加密函数,并按照类型进行详细介绍。

PHP中的散列加密算法

MD5加密
string md5 ( string $str [, bool $raw_output = false ] )
参数
str  --  原始字符串。
raw_output  --  如果可选的 raw_output 被设置为 TRUE,那么 MD5 报文摘要将以16字节长度的原始二进制格式返回。
这是一种不可逆加密,执行如下的代码
$password = '123456';
echo md5($password);
得到结果是e10adc3949ba59abbe56e057f20f883e
Crypt加密
string crypt ( string $str [, string $salt ] )
crypt() 返回一个基于标准 UNIX DES 算法或系统上其他可用的替代算法的散列字符串。
参数
str  --  待散列的字符串。
salt  --  可选的盐值字符串。如果没有提供,算法行为将由不同的算法实现决定,并可能导致不可预料的结束。
这是也一种不可逆加密,执行如下的代码
$password = '123456';
$salt = "test";// 只取前两个
echo crypt($password, $salt);
得到的结果是teMGKvBPcptKo
Sha1加密
string sha1 ( string $str [, bool $raw_output = false ] )
参数
str  --  输入字符串。
raw_output  --  如果可选的 raw_output 参数被设置为 TRUE,那么 sha1 摘要将以 20 字符长度的原始格式返回,否则返回值是一个 40 字符长度的十六进制数字。
这是也一种不可逆加密,执行如下代码:
$password = '123456';
echo sha1($password);
得到的结果是7c4a8d09ca3762af61e59520943dc26494f8941b

PHP中的编码加密函数

URL加密-string urlencode ( string $str )
  此函数便于将字符串编码并将其用于 URL 的请求部分,同时它还便于将变量传递给下一页。
返回字符串,此字符串中除了 -_. 之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数,空格则编码为加号(+)。此编码与 WWW 表单 POST 数据的编码方式是一样的,同时与 application/x-www-form-urlencoded 的媒体类型编码方式一样。由于历史原因,此编码在将空格编码为加号(+)方面与 RFC1738 编码不同。
URL解码-string urldecode ( string $str )
  解码给出的已编码字符串中的任何 %##。 加号('+')被解码成一个空格字符。 这是一种可逆加密,urlencode方法用于加密,urldecode方法用于解密,执行如下代码:
$url = 'http://www.xxx.com/CraryPrimitiveMan/';
$encodeUrl = urlencode($url);
echo $encodeUrl . " ";// 如果是在网页上展示的,就将 修改为<br/>
echo urldecode($encodeUrl);
得到的结果如下
http%3A%2F%2Fwww.xxx.com%2FCraryPrimitiveMan%2F
Base64信息编码加密
string base64_encode ( string $data )
  使用 base64 对 data 进行编码。 设计此种编码是为了使二进制数据可以通过非纯 8-bit 的传输层传输,例如电子邮件的主体。 Base64-encoded 数据要比原始数据多占用 33% 左右的空间。
base64 解码string base64_decode ( string $data [, bool $strict = false ] )
对 base64 编码的 data 进行解码。
参数
data  --  编码过的数据。
strict  --  如果输入的数据超出了 base64 字母表,则返回 FALSE。
执行如下代码:
$name = 'CraryPrimitiveMan';
$encodeName = base64_encode($name);
echo $encodeName . " ";
echo base64_decode($encodeName);
  以就是青锋建站给大家分享的PHP中的加密函数,主要分成两种:散列函数和信息编码,希望大家可以熟练运用,保证网站的安全。青锋建站,提供专业的高品质网站制作服务,包括php网站建设,SEO,网络营销,PHP开发,网站建设知名品牌,全国接单,为企业构建强有力的营销平台。

转载请注明来源网址:青锋建站-http://www.sjzphp.com/webdis/php_crypt_816.html

电话 15632335515 | 邮箱 943703539@qq.com | QQ 943703539 | 微信 qingfengjianzhan

Copyright © 2016-2026 青锋建站 版权所有