У меня проблемы с получением загрузочной директории от drupal. Есть ли какая-нибудь функция, возвращающая относительный или абсолютный путь?
У меня проблемы с получением загрузочной директории от drupal. Есть ли какая-нибудь функция, возвращающая относительный или абсолютный путь?
Ответы:
Эта информация сохраняется в таблице переменных Drupal. Используйте variable_get
функцию для получения этой информации, передавая имя правильной переменной:
variable_get('file_public_path', conf_path() . '/files');
variable_get('file_private_path');
Если вы хотите, чтобы временный каталог загрузки использовался, variable_get('file_temporary_path');
если вы хотите определить системный каталог загрузки, независимо от фактической конфигурации сайта, используйте file_directory_temp
функцию.
variable_get('file_public_path', conf_path() . '/files');
выберет для вас путь по умолчанию, если он не был изменен или явно задан администратором сайта.
variable_get('file_public_path', conf_path() . '/files');
основном, он выбирает путь по умолчанию для вас, если он не был изменен или явно установлен администратором сайта.
drupal_realpath
решение ниже. Кажется более законным.
Чтобы получить абсолютные пути к файловой системе, используйте drupal_realpath
(Drupal API) вместо file_create_url
:
drupal_realpath('public://');
// returns e.g. /var/www/drupal/sites/default/files
drupal_realpath('private://');
// returns e.g. /var/www/drupal/sites/default/files_private
public://
,private://
и т. Д., Чтобы избежать любых конфликтов папок. Воспользуйтесь преимуществами Drupal 7 :))