Halihallo Andreas
Danke Dir! Daran hatte ich nicht geacht, aber bei 2 von 64 Zeichen macht das nicht viel aus - im Gegensatz zum binrstring, da waren das 100% der Zeichen!
Ich weiss zwar nicht, wie du auf 100% kommst, aber mir ist klar, dass du mit base64 weniger Arbeit hast ;)
Aber was würdet Ihr sagen ist schneller(PHP):
$string = preg_replace("///","%2F",$string);
$string = preg_replace("/+/","%2B",$string);
$string = urlencode($string);
Hm... Dem Gefühl nach letzteres, aber diese Angabe ist wie immer ohne Gewähr :-)
Ne, wenn ich das Programmieren müsste, würde ich beim letzteren eine For-Schleife machen, wo ich einfach alle nicht url-konformen Zeichen durch den entsprechenden Eintrag aus der "Codierungs-Tabelle" ersetze und in den output-stream kopiere. Ersteres wird wohl die RegExp-Engine anwerfen und ich glaube nicht, dass diese so performant wäre, wie eine For-Schlaufe. Aber eben: Ich weiss a) nicht, wie urlencode intern programmiert ist und b) gleiches gilt für die regExp-Engine.
Sicherheit kriegst du wohl erst über einen Benchmark.
Viele Grüsse
Philipp