Transformer les chemins relatifs en URL absolues avec PHP
La conversion des chemins relatifs en URL absolues est essentielle pour travailler avec des ressources Web. Cette tâche peut être accomplie à l'aide de PHP, un langage de script largement utilisé pour le développement Web.
Comment convertir un chemin relatif en URL absolue à l'aide de PHP :
Pour réaliser cette conversion, vous pouvez utiliser la fonction rel2abs() :
function rel2abs($rel, $base) { /* return if already absolute URL */ if (parse_url($rel, PHP_URL_SCHEME) != '') return $rel; /* queries and anchors */ if ($rel[0]=='#' || $rel[0]=='?') return $base.$rel; /* parse base URL and convert to local variables: $scheme, $host, $path */ extract(parse_url($base)); /* remove non-directory element from path */ $path = preg_replace('#/[^/]*$#', '', $path); /* destroy path if relative url points to root */ if ($rel[0] == '/') $path = ''; /* dirty absolute URL */ $abs = "$host$path/$rel"; /* replace '//' or '/./' or '/foo/../' with '/' */ $re = array('#(/\.?/)#', '#/(?!\.\.)[^/]+/\.\./#'); for($n=1; $n>0; $abs=preg_replace($re, '/', $abs, -1, $n)) {} /* absolute URL is ready! */ return $scheme.'://'.$abs; }
Explication :
Utilisation :
Vous pouvez utiliser cette fonction pour transformer n'importe quel chemin relatif en son URL absolue correspondante. Par exemple, les extraits suivants illustrent comment transformer un chemin relatif en URL absolue :
$rel_path = "images/profile.jpg"; $base_url = "https://example.com/"; $abs_url = rel2abs($rel_path, $base_url); // Output: "https://example.com/images/profile.jpg"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!