Einzelnen Beitrag anzeigen

Benutzerbild von Valle
Valle

Registriert seit: 26. Dez 2005
Ort: Karlsruhe
1.223 Beiträge
 
#6

Re: myCoder-Funktion aus der CodeLib in php

  Alt 3. Mär 2009, 20:26
Ja, ich bin mir ganz hundert-prozentig sicher, dass der String bei 0 beginnt. Von dem {}-Syntax habe ich noch nie was gehört, trotz jahrelangem PHP. Ich benutze dafür normalerweise substr oder einfach den gleichen Syntax wie in Delphi: $s[$i] oder substr($s, $i, 1);

Den Fehler habe ich jetzt übrigens gefunden. Das Problem ist, dass der PHP-Zufallszahlen-Generator ein anderer ist, wie der von Delphi. Das heißt, dass es sehr schwierig werden könnte, diesen Algorithmus zu übersetzen. Hier hast du trotzdem noch meine Version:

Code:
function myCoder($s, $password, $decode)
{     
  $x = ($decode) ? -1 : 1;
  mt_srand($password); # oder srand()
  $result = '';
  for($i = 0; $i < strlen($s); $i++) {
    $c = ord($s[$i]);
    if (($c >= 32) && ($c <= 122)) {
      $c = $c + ($x * mt_rand(0, 90)); # oder rand()
      if (($c < 32) || ($c > 122))
        $c = $c - ($x*91);
    }
    $result .= chr($c);
  }     
  return $result;
}
Mit freundlichen Grüßen,

Valle
Valentin Voigt
BOFH excuse #423: „It's not RFC-822 compliant.“
Mein total langweiliger Blog
  Mit Zitat antworten Zitat