Het hele idee wat hierboven staat maakt uit van een veel groter en complexer systeem, maar ik heb dit stukje er even uitgevist om mijn probleem aan te geven. Bij var1 wordt $var omgezet via str_replace.. Bij var2 is het de bedoeling dat dit precies andersom gebeurt... Alleen dit is niet het geval, en dit zou wel zo moeten wezen
Het resultaat van het runnen van het bovenstaande script:
Var: poepchinees
Var 1: c4Dcg6qgDD0
Var2: EoMECUTCMMY
Var2 zou dus ook weer poepchinees moeten zijn... Maar dit is niet het geval.. En ik zou niet weten waarom? Weet iemand een oplossing of ziet iemand een fout?
Edit:
Voor de zekerheid zou iemand in de sourcecode van php moeten kijken, maar het lijkt er op dat hij zo doet:
cba --> a wordt b --> cbb --> b wordt c --> ccc --> c wordt a --> aaa.
<?php
$search = array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z');
$replace = array('O', 'Y', 'J', 'o', 'z', 'V', 'b', 'N', 'H', 'S', 'R', 'i', 'n', 'y', 'F', 'Q', 'Z', 6, 'T', 'd', 'B', 'P', 'l', 'C', 4, 'c', 'f', 'a', 0, 5, 'E', 9, 'W', 'I', 'u', 'x', 'w', 8, 'g', 'r', 'p', 'M', 't', 3, 'K', 'k', 'A', 'U', 'D', 'e', 'v', 'm', 'G', 1, 'X', 'q', 'h', 'j', 'L', 7, 's', 2);
$var = 'rewrite';
$newArr = str_split($var); //split $var into an array of characters. For php4, you'll have to create the str_split() function.
$var = '';
foreach ($newArr as $nchar)
{
$i = array_keys($replace, $nchar); //get the key(s) in the $search array for the character we're replacing. (we assume it occurs only once.) Returns an array of length, 1.
$var .= $replace[$i[0]]; //find the character in the $replace array that matches the position of the one we're replacing, and add it to $newstring.
}
echo $var . "<br><br>";
$newArr2 = str_split($var); //split $var into an array of characters. For php4, you'll have to create the str_split() function.
$var = '';
foreach ($newArr2 as $nchar)
{
$i = array_keys($replace, $nchar); //get the key(s) in the $search array for the character we're replacing. (we assume it occurs only once.) Returns an array of length, 1.
$var .= $replace[$i[0]]; //find the character in the $replace array that matches the position of the one we're replacing, and add it to $newstring.
}
echo $var;
?>
$newArr= str_split($var);//split $var into an array of characters. For php4, you'll have to create the str_split() function.
$var='';
foreach($newArras$nchar)
{
$i=array_keys($replace,$nchar);//get the key(s) in the $search array for the character we're replacing. (we assume it occurs only once.) Returns an array of length, 1.
$var.=$replace[$i[0]];//find the character in the $replace array that matches the position of the one we're replacing, and add it to $newstring.
$newArr2= str_split($var);//split $var into an array of characters. For php4, you'll have to create the str_split() function.
$var='';
foreach($newArr2as$nchar)
{
$i=array_keys($replace,$nchar);//get the key(s) in the $search array for the character we're replacing. (we assume it occurs only once.) Returns an array of length, 1.
$var.=$replace[$i[0]];//find the character in the $replace array that matches the position of the one we're replacing, and add it to $newstring.