Szyfr cezara PHP, a zapis do pliku

0

Witam,

Mam problem z zadaniem z PHP, mianowicie przy programie pobierającym z pliku fragment książki i szyfrującym go (+1), zaszyfrowany tekst nie chce ponownie zapisać się do nowego pliku .txt.

Drugim problemem jest to, że ostatecznie całość nie szyfruje tekstu +1, mimo takich założeń w kodzie.

Kod wygląda następująco:

<?php



$fp = fopen("plik.txt", "w");



$string = "ksiazka";
$shift = 1;
$shiftedString = "";

for ($i = 0; $i < strlen($string); $i++)
{
    $ascii = ord($string[$i]);
    $shiftedChar = chr($ascii + $shift);

    $shiftedString .= $shiftedChar;
}

echo $shiftedString;

$str="
Amerigo Bonasera siedział w nowojorskim Sądzie Karnym Nr 3
";
for($i=0;$i<strlen($str);$i++){
    echo chr((ord($str[$i]))+1);
}




// zamknięcie pliku
fclose($fp);


?>

Macie jakieś wskazówki? W załączniku znajdują się screeny tego co wyświetla się w pliku html, a co ostatecznie zapisuje się w .txt.

0
cat cezar.php 
<?php
$file_input  = $argv[1];
$file_output = $argv[2];
$offset      = (int)$argv[3];
$input  = file_get_contents( $file_input );
$output = '';
$len = strlen($input);
for( $i=0 ; $i<$len ; $i++ )
  $output .= chr( ( ord($input[$i]) + $offset) % 255 ) ;
file_put_contents( $file_output , $output );

cat > input.txt 
Litwo ojczyzno moja ty jestes jak Lorem Ipsum
wiersz 2
wiersz 3
cat input.txt 
Litwo ojczyzno moja ty jestes jak Lorem Ipsum
wiersz 2
wiersz 3
php cezar.php input.txt output.txt +13
cat output.txt 
Yv��|-|wp���{|-z|wn-��-wr��r�-wnx-Y|rz-V}��z�vr��-?�vr��-@ 
php cezar.php output.txt test.txt -13
cat test.txt 
Litwo ojczyzno moja ty jestes jak Lorem Ipsum
wiersz 2
wiersz 3

1 użytkowników online, w tym zalogowanych: 0, gości: 1