Включенный файл PHP, который ссылается на файл - местоположение всегда меняется - PullRequest
1 голос
/ 07 февраля 2012

Довольно сложно выразить это словами.По сути, у меня есть класс PHP, который читает и записывает данные в файл в файловой системе.Мне нужно получить доступ к этим данным из нескольких сценариев, поэтому я создал 1 центральный экземпляр класса, который загружает данные, и попытался ссылаться на него, включая сценарий, где бы мне ни понадобился доступ к данным.Проблема заключается в том, что путь к файлу, который загружается и записывается классом, зависит от того, какой сценарий выполняет включение, а не файл PHP, в котором создается объект.

Что такоелучший способ справиться с этим?Я не могу использовать абсолютный URL, так как система должна быть развернута, и поэтому я не знаю, какой URL будет

Ответы [ 3 ]

1 голос
/ 17 октября 2012

Видя, что вы знаете местоположение файла, к которому хотите получить доступ, относительно php-скрипта, в котором вы находитесь: Вы можете быть абсолютно уверены, что используете магическую константу __ DIR __ .

require_once __ DIR _ _ . '/ Known_location / file_required.php';

или для версий php старше 5.3

require_once dirname ( __ FILE _ _ ). '/ Known_location / file_required.php';

0 голосов
/ 09 февраля 2012

Я думаю, что собираюсь использовать одно из следующих решений:

http://www.bitflop.com/document/95

0 голосов
/ 07 февраля 2012

yoursite.com / index.php? Page = subdir

if (!isset($_GET['page'] || $_GET['page']==home){
$page = '/';
}elseif($_GET['page']=="subdir"){
$page = '../';
}
else{
// someone messed with the url
header('location: yoursite.com');
}

include $page . 'yourfile.php';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...