请问我的代码可能有什么问题?该代码旨在加密给定的字符串。它的加密完全没问题,但是当回显加密的值时,它会给它添加数字。下面是代码:我在php的加密代码错误
$keys = "Bb94tU1LSSLgPKNu";
$encrypt = array();
// this contains the key/value pair i used for the encryption
$arrayEncrypt = array("a"=>"g","b"=>"h","c"=>"i","d"=>"j","e"=>"k","f"=>"l","g"=>"m","h"=>"n","i"=>"o","j"=>"p","k"=>"q","l"=>"r", "m"=>"s","n"=>"t","o"=>"u","p"=>"v","q"=>"w","r"=>"x","s"=>"y","t"=>"z","u"=>"a","v"=>"b","w"=>"c","x"=>"d","y"=>"e","z"=>"f","A"=>"G","B"=>"H","C"=>"I","D"=>"J","E"=>"K","F"=>"L","G"=>"M","H"=>"N","I"=>"O","J"=>"P","K"=>"Q","L"=>"R","M"=>"S","N"=>"T","O"=>"U","P"=>"V","Q"=>"W","R"=>"X","S"=>"Y","T"=>"Z","U"=>"A","V"=>"B","W"=>"C","X"=>"D","Y"=>"E","Z"=>"F","0"=>"2","1"=>"4","2"=>"6","3"=>"8","4"=>"0","5"=>"9","6"=>"7","7"=>"5","8"=>"3","9"=>"1");
for ($i = 0; $i < strlen($keys); $i++) {
if (array_key_exists($keys[$i], $arrayEncrypt)) {
foreach ($arrayEncrypt as $key => $letter) {
if ($keys[$i] == $key) {
// appends the values of each in $encrypt array
array_push($encrypt, $letter);
}
}
}
}
$encryptedValue = "";
foreach ($encrypt as $encrypted) {
$encryptedValue .= $encrypted;
echo $encryptedValue;
}
它打印:
H2h210z2A24R2Y2Y2R2m2V2Q2T2a2
相反的:
Hh10zA4RYYRmVQTa
此代码甚至不起作用。除了你错过分号和做''$ encryptedValue = ...'之类的事实,当我纠正它们时,它不会产生任何输出。 – Enstage
请不要对非js,css或html代码使用片段功能。 – Daedalus
@Enstage我粘贴了完整的代码并更正了您提到的那一行。你现在可以检查一下吗? – Nathileo