Jan: komisches Problem

Beitrag lesen

Hallo allemitzusammen, ich habe folgende 2 funktionen erstellt:

function num2let($a)
{
$string=".#'!1234567890qwertzuiopüasdfghjklöäyxcvbnmQWERTZUIOPÜASDFGHJKLÖÄYXCVBNM,;:_(){}=+*/:-<>?;$"\";
$a=mod($a, strlen($string));
return $string{$a};
}
 num2let ruft die funkton mod auf, welche wäre:

function mod($a, $b)
{

if($b==0)
$b=1;

$b=floor($b);
$a=floor($a);

$bet=$a/$b;
$ger=floor($bet);

$ret=$bet-$ger;
$ret=abs($ret);
$ret*=$b;

return $ret;
}

Meine erste frage bezieht sich nicht wirklich auf mein Hauptproblem. Gibt es in Php eine modolu funkton, weil ich persönlich konnte keine finden.

Zweitens:
wenn man in num2let
die nummer 93 eingibt, wird "." ausgegeben. Dasselbe geshiet wenn man 94 eingibt. Jedoch wird bei der eingabe von 0 "." und von 1 "#" ausgegeben. Ich habe auch mit der echo funktion überpruft ob der fehler vielleicht bei der mod funktion liegen könnte, die giebt aber bei 94: 1 aus.
Ich hoffe ihr könnt mir bei dem Problem helfen, denn ich selber blicke nicht hinter den Fehler. Ich danke euch schon vorfeld für die Antworten.

Jan