Как достать название папки, в которой лежит файл?

122
16 декабря 2017, 07:55

Есть две папки:

/var/www/developer/main/about/index.php

/var/www/production/main/about/index.php

Оба файла идентичны и дублируют друг-друга. Мне нужно, чтобы index.php в папке /about/ распознавал, лежит ли он в папке /developer/, или же в папке /production/. Также, работоспособность скрипта должна сохраняться на любом уровне вложенности. Если я, например, захочу переместить скрипт в папку /var/www/developer/main/about/more/index.php. Итогом работы скрипта должна быть строка 'developer' или 'production'. Как это можно сделать и при помощи каких функций?

Answer 1

Можно создать простую функцию которая будет смотреть текущую директорию файла и через регулярку забрать нужное вам значение:

function environment()
{
    preg_match('/www\/(\w+)/', __DIR__, $matches);
    if (empty($matches[1])) {
        throw new \Exception('Что-то пошло не так');
    }
    return $matches[1];
}
var_dump(environment());

На выходе будет то что вы и просили.

Answer 2

С помощью __DIR__ узнаем путь файла, а с помощью strpos определяем есть ли в пути например developer и делаем в зависимости от этого то, что задумали.

READ ALSO
Модификация изображения в php

Модификация изображения в php

Здравствуйте как можно получить вот такой результат с помощью php при загрузки изображение на серверЧтобы загружаемые изображения сохранились...

152
PHP многопоточность , curl

PHP многопоточность , curl

У меня есть api , который принимает POST запрос, в теле цифры, и если цифры совпадают, возвращает сгенерированный urlСейчас мне надо написать php скрипт,...

127
Расписание работы зала

Расписание работы зала

Есть необходимость сделать на сайте вывод информации о работе залаВ разное время проводятся разные занятия для разных групп

144
Как прикрепить документ как граффити VK?

Как прикрепить документ как граффити VK?

Интересует такой вопрос, как прикрепить документ как граффити без всяких программ, но возможно с API на PHP или другим способом?

184