PHP-Windows和ubuntu之间的密码加密不同

时间:2019-03-28 07:42:31

标签: php windows ubuntu-16.04

我们有两个正在运行的服务器。旧的windows server 2008和新的Ubuntu server 16.04.1。我的任务是匹配数据库中的加密密码和用户的密码类型。在Windows server上,我尝试运行source code的加密密码,它可以正常工作,并且匹配。但是尝试在Ubuntu server上运行会返回类似�����的字符,因此我无法将两个密码都匹配。 我一直在寻找解决方案,这是在服务器配置上吗?我运行相同的代码,但服务器之间的输出不同。感谢您的帮助!

加密代码:

function fn_EncryptPassword() {
    $arg = func_get_args();

    foreach ($arg as $key => $args) {
        $_retval = '';
        $args=strtoupper(trim($args));
        for ($i=1; $i<=strlen($args); $i++) {
            $_retval.=chr(ord(substr($args,$i-1,1)) + 100);
        }
    }
    return $_retval;
} 

1 个答案:

答案 0 :(得分:0)

function fn_EncryptPassword() {
    $arg = func_get_args();

    foreach ($arg as $key => $args) {
        $_retval = '';
        $args=strtoupper(trim($args));
        for ($i=1; $i<=strlen($args); $i++) {
            $_retval.=chr(ord(substr($args,$i-1,1)) + 100);
        }
    }
    return utf8_encode($_retval);
}



echo fn_EncryptPassword('şçogby*/');

添加utf_encode函数