dirname(__FILE__) sur localhost
J'utilise WAMP et avoir un développement de site dans le répertoire www. Je veux utiliser dirname(__FILE__)
pour définir le chemin d'accès à la racine du serveur.
Actuellement, je suis en utilisant un fichier de configuration qui contient:
define('PATH', dirname(__FILE__));
Je suis, y compris le fichier de config dans mon header.php
fichier comme ceci:
<?php require_once("config.php") ?>
Puis, sur mes sous-pages, j'ai utiliser la constante PATH
pour définir le chemin d'accès par, y compris header.php
.
<?php require_once("../inc/header.php"); ?>
Cependant, mes liens sont à venir comme ceci:
<link rel="stylesheet" href="C:\wamp\www/css/style.css" />
Que dois-je faire pour résoudre ce problème? Et depuis que je suis, y compris ma constante dans le header.php
fichier je n'ai pas accès à la constante dans la première require_once("../inc/header.php");
Ce que d'autres méthode puis-je utiliser pour trouver la racine pour header.php
?
les deux, je suppose. Je vais avoir besoin de travailler une fois que je l'ai pousser à la production.
OriginalL'auteur Paul Dessert | 2012-02-18
Vous devez vous connecter pour publier un commentaire.
Il semble que vous juste besoin d'avoir
Si vous voulez être super technique, vous pouvez faire quelque chose comme cela à la place.
Sur une note de côté, et, plus important encore, vous n'avez pas réellement besoin d'eux. Ce sera le travail.
Quand a href commence par un séparateur de répertoire, il est considéré comme relatif à la racine du document, et non pas le répertoire de travail courant.
href
pointe. Je l'ai mis en place et tout est bien là. Cependant, j'ai encore besoin d'utiliserdefine('PATH', $_SERVER['SERVER_NAME']);
pour relier monconfig.php
fichier. Monconfig.php
contient la constante de racine. Cependant, j'ai besoin de defin la racine avant que j'appelleheader.php
. C'est là que je suis bloqué.index.php
fonctionne très bien, parce qu'il la trouve tout simplementconfig.php
et la charge. Quand j'ai naviguer vers une autre page, le lien est rompu. L'espoir qui fait sens. Merci!Je ne suis pas sûr que j'obtiens ce que tu veux dire. Avez-vous un lien direct de n'importe où pour que je puisse voir ce que la structure de répertoire ressemble?
merci de revenir vers moi. Je viens de comprendre mon erreur il y a quelques minutes. Prendre soin.
Pas de problème. Je suis content que vous l'avez trouvé.
Ainsi, vous s'il vous plaît partager avec le reste d'entre nous?
OriginalL'auteur Nilpo
__FILE__
est un chemin du système de fichiers, pas un chemin d'URL. Je pense que vous pouvez être confus au sujet de qui vous avez besoin. Pour inclure des fichiers php ou déplacer les choses, vous voulez utiliser le chemin du système de fichiers. De créer des Url pour les ressources que vous souhaitez utiliser l'URL.Pour le système de fichier des trucs que vous pouvez utiliser ce que l'
dirname(__FILE__)
. Donc, dans votre contrôleur frontal ou top niveau des points d'entrée si vous n'êtes pas en utilisant le modèle de contrôleur frontal, vous pourriez avoir des choses comme:Autant que les actifs go (css, images, js) je tiens à les garder en un seul endroit, au
DOCUMENT_ROOT
de sorte que le chemin est toujours/css/path/to/file.css
peu importe où vous êtes dans la structure du fichier. Cela peut être un problème si vous développer dans des sous-dossiers sur votre ordinateur local ou un serveur de test, mais son facilement évités par l'utilisation d'Hôtes Virtuels afin que chaque site a sa propre structure de fichier complètement séparé des autres.Bien sûr, il ne... vous assurez-vous de toujours avoir le même par rapport à des installations et puis vous êtes très bien. Par exemple, si le point d'entrée unique est
/PATH/TO/PROJECT/public
puis dans votre FC, vous pouvez fairedefine('ROOT', realpath(dirname(__FILE__) . '/../'))
OriginalL'auteur prodigitalson
OriginalL'auteur Behnam Bakhshi