PHP file_put_contents с абсолютным путем? - PullRequest
2 голосов
/ 26 марта 2011

Я использую Wordpress и PHP и функцию file_put_contents (). Структура файла Wordpress может выглядеть по-разному в зависимости от пользователя.

Мне нужно назвать это так:

file_put_contents(TEMPLATEPATH . '/ps_logo2.png');

или то же самое, как это:

file_put_contents('C:\wamp\www\domain\modehallen.se/wp-content/uploads/images/ps_logo2.png');

В приведенном выше примере указан абсолютный путь к localhost (поэтому это C :). Мне нужен путь или другой способ убедиться, что файл помещен в нужное место.

Как это сделать?

Ответы [ 2 ]

11 голосов
/ 26 марта 2011

Как насчет чего-то вроде:

file_put_contents($_SERVER['DOCUMENT_ROOT']."path/to/user/wordpress/account/".TEMPLATEPATH.'/ps_logo2.png');

edit

$_SERVER['SCRIPT_NAME'] дает путь к сценарию, который в данный момент обрабатывается.

2 голосов
/ 26 марта 2011

realpath() сообщит вам, является ли это допустимый путь в файловой системе. Чтобы проверить, действительно ли путь находится в заданном пути «песочницы», посмотрите ответы на этот вопрос , который я здесь недавно задавал.

...