wenn es die Datei namens
$_GET['series'] . '.jsonld'
tatsächlich gibt.
Hm. Ja. Aber alles, was irgendwie auf das (File-)System feuert, bereitet auch mir Bauchschmerzen. Da mir die sanitize filters zu komplex (das ist eine eigene Fehlerquelle), vor allem zu instabil sind (da steht ziemlich oft "DEPRECATED" ...) genügt mir sowas:
function sanitizeFilenameStrictASCII( $s ) {
$n = preg_replace( '/[^a-zA-Z0-9._-]/', '', $s );
if ( $n === $s ) return $n;
return false;
}
Erlaubt: ASCII-Buchstaben, Ziffern, Punkt, Unterstrich und Minus-Symbol. Was nicht in die Vorgaben passt (Hier also auch kein Verzeichnis-Trenner) wird vollständig geancelt. Peng!