2016-11-06 2 views
0

Я работаю на index.php файл, который расположен в /folder1/folder2/folder3/index.php и содержит некоторые PHP-код, как показано ниже:Получить полный путь текущего файла с PHP

<?php 
include $_SERVER['DOCUMENT_ROOT'].'/path/to/the/filename.php'; 
$root = new SimpleXMLElement($xmlstr); 
echo $root->subroot[0]->data->title; 
?> 

filename.php не изменяет имя или расширение. Но, папки и подпапки, которые приводят к filename.php, несут разные имена в зависимости от текущих обстоятельств.

Например, в папке с экземплярами называются /a1/a2/a3/filename.php и в другом экземпляре с именем /b1/b2/b3/filename.php. Filename.php имеет одно и то же имя во всех экземплярах, но внутри содержит разные данные.

Если это поможет, то filename.php структурирован следующим образом:

<?php 
$xmlstr = <<<'XML' 
<?xml version='1.0' standalone='yes'?> 
<root> 
<subroot> 
    <data> 
    <title> 
    -- some text here -- 
    </title> 
    </data> 
</subroot> 
</root> 
XML; 
?> 

Поскольку папка и вложенные папки уже созданы, и их имена известны, я хочу (если это возможно), чтобы кодировать/путь/к/the /, поэтому пользователю не нужно будет вводить соответствующий путь каждый раз при создании нового файла index.php. Я пытаюсь что-то вроде этого:

<?php 
include $_SERVER['DOCUMENT_ROOT'].['__DIR__']'filename.php'; 
$root = new SimpleXMLElement($xmlstr); 
echo $root->subroot[0]->data->title; 
?> 

... и:

<?php 
include $_SERVER['DOCUMENT_ROOT'].['REQUEST_URI']'filename.php'; 
$root = new SimpleXMLElement($xmlstr); 
echo $root->subroot[0]->data->title; 
?> 

... но оба не работают. Любые предложения или идеи?

ответ

Смежные вопросы