Hallo.
Den folgenden Code habe ich mir zusammengebastelt, um einen Pfad zu überprüfen. Die Funktion gibt true zurück, wenn der Pfad nur die Zeichen in der Whitelist enthält.
Alle Zeichen werden einzeln überprüft.
Meine Frage: das geht doch sicher auch schneller?
Wie kann ich das optimieren?
Den folgenden Code habe ich mir zusammengebastelt, um einen Pfad zu überprüfen. Die Funktion gibt true zurück, wenn der Pfad nur die Zeichen in der Whitelist enthält.
Alle Zeichen werden einzeln überprüft.
Meine Frage: das geht doch sicher auch schneller?
Wie kann ich das optimieren?
PHP-Code:
public static function path_chars_valid($path) {
$valid = false;
$s = strlen(strval($path));
//check each character
for($i=0;$i<$s;$i++)
{
if(preg_match("~^[a-zA-Z0-9:\\_+\./-]$~", $path[$i]))
{
//no illegal characters
$valid = true;
}
else
{
//path contains illegal characters
$valid = false;
break;
}
}
return $valid;
}
Kommentar