Input
Verschuiving

Broncode:

<?php
if(isset($_POST['text']))
{
    
$aChars range('a''z');    //Maak een array met alle letters
    
$aCharsInv array_flip($aChars);    //Verwissel keys met waardes
    
    //Zet alles in kleine letters, anders vindt hij ze niet in de arrays
    
$sText strtolower($_POST['text']);
    
$sCode strtolower($_POST['code']);
    
    
$iCodes $i;
    
$iCode 0;
    
$i 0;
    
$iMaxPos strlen($sText) - 1;
    while(
$i <= $iMaxPos)
    {
        
//Spaties niet vertalen
        
if($sText{$i} != ' ')
        {
            if(
$iCode >= strlen($sCode))
            {
                
$iCode 0;
            }
            
$iChar $aCharsInv[$sText{$i}];    //Letter in text op positie $i naar cijfer vertalen
            
$iCodeChar $aCharsInv[$sCode{$iCode}];    //Letter in codewoord op positie $iCode naar cijfer vertalen
            
            //Bij het verschuiven rekening houden met eindigheid van het alfabet, z + a => z, z + b => a
            
if($iChar $iCodeChar 25)
            {
                
$iChar $iChar $iCodeChar 26;
            }
            else
                
$iChar $iChar $iCodeChar;
            echo 
$aChars[$iChar];
            
$iCode++;
        }
        else
            echo 
' ';
        
$i++;
    }
}
?>