Ich möchte in der Lage sein, meinen Code zu bewegen und in der Lage sein, den Pfad zu entdecken, um den Wert bestimmter Variablen zu beeinflussen. Dies wird auf der Seite platziert, auf der die Variablen initialisiert werden.Dynamisch Wege finden, gibt es einen besseren Weg?
Hier ist, was ich kam mit:
$path_array = explode('/', $_SERVER['SCRIPT_FILENAME']);
$out = "";
// -3 represents the number of folders and files to go back to reach the wanted path
for($i=0; $i < count($path_array) - 3; $i++){
$out .= $path_array[$i].'/';
}
Dann, als ein Beispiel kann ich folgendes tun:
$dyn_path_1 = $out . 'folder1/';
$dyn_path_2 = $out . 'folder2/something_else/';
$dyn_path_3 = $out . 'folder3/';
Sind in Funktionen dort gebaut, die ich mache, dass würde fehlen könnte das obsolet?
ps: dies würde uns ermöglichen, mehrere Arbeitskopien von Code zu haben, ohne uns um diese Variablen kümmern zu müssen, wenn wir den Code auschecken.
Edit # 1:
Pfad der Variablendatei: root/ordnerA/ordnerB/var.php
Innerhalb var.php muss ich wieder nach unten zu root gehen, die je 2-3 Schritte auf der Methode. Ich frage mich, ob es möglich wäre, so etwas wie dies zu tun:
echo some_function("../../file_I_know.php");
Welche zurückkehren könnte: C:/root/
Wie wäre es damit: dirname (realpath ("../../ known_file.txt")); – TekiusFanatikus
@TekiusFanatikus Ja, das würde funktionieren, aber das hängt davon ab, dass Dateien ihre relative Position und ihren Namen behalten, während die obige Definition keine Abhängigkeiten hat. – Orbling
Einverstanden und notiert. Dies ist die Lösung, die ich am Ende benutze: dirname (str_replace ("\\", "/", realpath ("../../ bekannte_datei.txt"))) ... @All: danke für all die Hilfe! – TekiusFanatikus