Pau*_*xon 11
目前尚不清楚这是否可以逆转,所以这里有两个备选答案.
"你好"成为"shrxs"意味着一种超越简单替代(凯撒密码)的方案,或许像聚合字母密码.
但是对于一个简单的凯撒密码,你可以使用strtr
$plain="hello";
$cipher = strtr($plain,
"abcdefghijklmnopqrstuvwxyz",
"tuvhijkcwxyzldefgsmnopqrab");
echo $cipher;
Run Code Online (Sandbox Code Playgroud)
会显示"cizze";
如果你不需要扭转加扰,并想要一些真正随机的东西,试试这个
function random_char($matches)
{
return chr(rand(ord('a'),ord('z')));
}
$plain="hello";
$random=preg_replace_callback(
"{[a-z]}i",
"random_char",
$plain);
echo $random;
Run Code Online (Sandbox Code Playgroud)
这里我们使用preg_replace_callback让random_char回调用随机替代替换每个char.
您可能还想查看str_rot13函数,它具有可逆性的优点.
<?php
var $foo = "hello world!";
var $bar = str_rot13($foo); // $bar equals "uryyb jbeyq!"
var $baz = str_rot13($bar); // $baz equals "hello world!"
?>
Run Code Online (Sandbox Code Playgroud)