PHP : rawurlencode - Manual
▻https://www.php.net/manual/fr/function.rawurlencode.php#63751
petit « trick » pour générer des URLs valides même si le chemin et/ou le nom de fichier contiennent des caractères exotiques
$encoded = implode("/", array_map("rawurlencode", explode("/", $path)));
D’autres alternatives plus « robustes » sur ▻https://stackoverflow.com/questions/9831077/how-to-url-encode-only-non-ascii-symbols-of-url-in-php-but-leave-rese :
preg_replace_callback('/[^\x20-\x7f]/', function($match) {
return urlencode($match[0]);
}, $url);