Comment convertir des chemins relatifs en URL absolues en PHP ?

DDD
Libérer: 2024-11-06 06:48:02
original
508 Les gens l'ont consulté

How to Convert Relative Paths to Absolute URLs in PHP?

Transformer les chemins relatifs en URL absolues en PHP

Lorsque vous travaillez avec des URL, il devient souvent nécessaire de convertir les chemins relatifs en URL absolues. PHP fournit une fonction appelée rel2abs qui accomplit cette tâche.

Définition de la fonction

function rel2abs($rel, $base)
Copier après la connexion
  • $rel : Le chemin relatif qui doit être converti.
  • $base : L'URL de base à partir de laquelle le chemin relatif sera résolu.

Exemple d'utilisation

L'extrait de code suivant montre comment utiliser la fonction rel2abs :

$relativePath = 'images/logo.png';
$baseUrl = 'https://example.com';

$absoluteUrl = rel2abs($relativePath, $baseUrl);

echo $absoluteUrl; // Prints: https://example.com/images/logo.png
Copier après la connexion

Détails d'implémentation

La fonction rel2abs suit ces étapes pour convertir un relatif chemin vers une URL absolue :

  1. Si le chemin relatif est déjà une URL absolue (c'est-à-dire qu'il contient un schéma tel que "http" ou "https"), il est renvoyé tel quel.
  2. Si le chemin relatif commence par une chaîne de requête ("?") ou une ancre ("#"), il est ajouté à l'URL de base.
  3. L'URL de base est analysée dans ses composants ( schéma, hôte et chemin).
  4. L'élément non-répertoire du chemin de l'URL de base est supprimé.
  5. Une URL absolue "sale" est construite en combinant l'hôte de l'URL de base et le chemin modifié , et le chemin relatif.
  6. L'URL absolue "sale" est nettoyée en supprimant toutes les barres obliques répétées ("//"), les barres obliques inutiles après les noms de répertoire ("/./") ou en revenant en arrière sur les références de répertoire. ("/foo/../").
  7. L'URL absolue finale est renvoyée.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!