2013-07-22 2 views
2

si le chemin est ../b et le répertoire en cours est /var/www/a/c, alors serait realpath être /var/www/a/bComment obtenir realpath pour les chemins virtuels?

mais si b n'existe pas, retourne realpath() faux.

Est-il possible d'obtenir le même chemin même si le répertoire n'existe pas encore?

+0

comment peut-il y avoir un chemin ou un répertoire inexistant ?? –

+0

@Dagon Il n'est peut-être pas encore créé par exemple. –

+0

ajouter juste ajouter ** b ** au chemin actuel (c'est juste une chaîne?) - je pense que je suis confus ici –

Répondre

4

Il n'est pas disponible en tant que format de fonction prédéfini comme realpath(), simplement parce qu'il est impossible de le faire de manière fiable.

Par exemple, sur MacOS, en faisant ls /etc/.., vous penseriez que vous obtiendriez une liste de répertoire de /. La chose est cependant que /etc est un lien mou à /private/etc, faisant ainsi ls /etc/.. vous donne une liste de /private.

Cela n'a pas pu être calculé à l'avance si le lien n'existait pas encore, c'est pourquoi aucune fonction ne peut le résoudre au sens général sans tous les fichiers/répertoires déjà existants. En d'autres termes, vous devrez probablement écrire votre propre fonction pour résoudre votre problème spécifique.

Questions connexes