php 字符串转为16进制的方法-PHP问题

资源魔 78 0

php字符串转为16进制的办法:起首找到并关上co妹妹on.php;而后增加strToHex函数;最初经过strToHex函数完成字符串转十六进制便可。

保举:《PHP视频教程》

PHP 字符串以及十六进制互转

明天正在做名目中,由于要挪用他人网站的接口,后果需求对申请以及前往的工夫进行十六进制加密解决,于是正在网上查了下材料谢了一个转换Demo做个记载。

假如正在TP下应用能够将上面函数放到co妹妹on.php中

一,加密函数

<?php
/**
*字符串转十六进制函数
*@pream string $str='abc';
*/
function strToHex($str){
$hex="";
for($i=0;$i<strlen($str);$i++)
$hex.=dechex(ord($str[$i]));
$hex=strtoupper($hex);
return $hex;
}
?>

2、解密函数

<?php
/**
*十六进制转字符串函数
*@pream string $hex='616263';
*/
function hexToStr($hex){
$str="";
for($i=0;$i<strlen($hex)-1;$i+=2)
$str.=chr(hexdec($hex[$i].$hex[$i+1]));
return $str;
}
?>

加密 解密 转换 函数应用Demo事例,这里为了不便写正在了一个类中。

<?php
class Test{
/**
*字符串转十六进制函数
*@pream string $str='abc';
*/
public function strToHex($str){
$hex="";
for($i=0;$i<strlen($str);$i++)
$hex.=dechex(ord($str[$i]));
$hex=strtoupper($hex);
return $hex;
}
/**
*十六进制转字符串函数
*@pream string $hex='616263';
*/
public function hexToStr($hex){
$str="";
for($i=0;$i<strlen($hex)-1;$i+=2)
$str.=chr(hexdec($hex[$i].$hex[$i+1]));
return $str;
}
}
<span style="white-space:pre"> </span>//测试Demo成果
$test = new Test();
$str = '要加密的内容sxfenglei';
$data = $test->strToHex($str);
echo '加密内容:要加密的内容sxfenglei <br>'.$data.'<hr>';
$output = $test->hexToStr($data);
echo '解密内容:E8A681E58AA0E5AF86E79A84E58685E5AEB9737866656E676C6569 <br>'.$output;
?>

运转后果:

加密内容:要加密的内容sxfenglei
E8A681E58AA0E5AF86E79A84E58685E5AEB9737866656E676C6569
解密内容:E8A681E58AA0E5AF86E79A84E58685E5AEB9737866656E676C6569
要加密的内容sxfenglei

以上就是php 字符串转为16进制的办法的具体内容,更多请存眷资源魔其它相干文章!

标签: php php教程 php故障解决 php使用问题 16进制

抱歉,评论功能暂时关闭!