首页 > 开发 > PHP > 正文

php hex加密解密函数使用例子

2024-05-04 21:50:37
字体:
来源:转载
供稿:网友

加密解密:

  1. //Hex(Hex(Md5((原文+密钥).getBytes(“utf-8”))).getBytes(“utf-8”)) 
  2. function String2Hex($string){ 
  3.     $hex=''
  4.     for ($i=0; $i < strlen($string); $i++){ 
  5.         $hex .= dechex(ord($string[$i])); 
  6.     } 
  7.     return $hex
  8.  
  9. function Hex2String($hex){ 
  10.     $string=''
  11.     for ($i=0; $i < strlen($hex)-1; $i+=2){ 
  12.         $string .= chr(hexdec($hex[$i].$hex[$i+1])); 
  13.     } 
  14.     return $string
  15.  
  16. // example: 
  17.  
  18. $hex = String2Hex("test sentence..."); 
  19.  
  20. $data = array
  21.     'appId' => 'SHAN-GUO-CHI-BI',  
  22.     'data' =>'{"appId":"SHAN-GUO-CHI-BI","cardNo":"6006012000000001"}',  
  23.     'sig'=>'4331443139334331313645464642444544364334343742374236364335454243'
  24. ); 
  25.  
  26. $key = '111111111111111111111111'
  27.  
  28. $data['sig'] = String2Hex(strtoupper(md5($data['data'] . $key))); 

例子:PHP 转换输出字符串为 Hex Oct

通过下面代码,可以把PHP输出的字符串换行为16进制和8进制。

  1. <?php  
  2. $str = "http://www.Vevb.com";  
  3. $lixiphp = ”;  
  4. for($i = 0; $i < strlen($str); $i++) {  
  5.   if ($i % 2 == 0) {  
  6.     $lixiphp .= ‘/x’.base_convert(ord($str[$i]), 10, 16);  
  7.   }  
  8.   else {  
  9.     $lixiphp .= ‘//’.base_convert(ord($str[$i]), 10, 8);  
  10.   }  
  11. }  
  12. echo $lixiphp;  
  13. ?> 

通过上述代码,把字符串 "http://www.Vevb.com" 转换为"/x68/164/x74/160/x3a/57/x2f/142/x6c/157/x67/56/x6c/151/x78/151/x70/150/x70/56/x63/157/x6d"

PHP实现来基数位字符串转换十六进制,偶数位字符串转换为八进制。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表