当前位置:Gxlcms > PHP教程 > 小白用php仿照js写的一个加密方法就是有问题求解答

小白用php仿照js写的一个加密方法就是有问题求解答

时间:2021-07-01 10:21:17 帮助过:6人阅读

php加密javascrpit

原本的js是一段加密的方法
function checkform()
{
var dcode;
var dcode1;
var dcode2;

dcode=document.form1.pwd.value;
dcode1="";
dcode2=1275903582
dcode2=""+dcode2*137;
var tmpstr;
var dcodelen;
dcodelen=dcode.length;
for (i=1;i<=dcodelen;i++){
tmpstr = dcode.substring(i-1,i);
dcode1=dcode1 + String.fromCharCode(tmpstr.charCodeAt(0)-i-dcode2.substring(i-1,i));
}

document.form1.pwd.value=dcode1;

}

这是我仿照写的php代码 但始终有错
//加密
function encryption($dcode){

    $dcode1='';     $dcode2=1275903582;    $dcode2 = "".$dcode2 * 137;     $tmpstr='';      for ($i=1;$i<=count($dcode);$i++)    {             $tmpstr = substr($dcode,$i-1,1);             $tmpstr = $this->charCodeAt($tmpstr, 0);             $num = $this->fromCharCode($tmpstr-$i-substr($dcode2,$i-1,1));             $dcode1=$dcode1 + $num;    }              $encryDcode=$dcode1;             print_r($encryDcode);             die();             return $encryDcode;     } 

function fromCharCode($codes) {
if (is_scalar($codes))
$codes= func_get_args();
$str= '';
foreach ($codes as $code)
$str.= chr($code);
return $str;
}

function charCodeAt($str, $index)
{
$char = mb_substr($str, $index, 1, 'UTF-8');

if (mb_check_encoding($char, 'UTF-8'))
{
$ret = mb_convert_encoding($char, 'UTF-32BE', 'UTF-8');
return hexdec(bin2hex($ret)); } else { return null;
}
}

人气教程排行