#php #arrays
#php #массивы
Вопрос:
У меня есть этот путь к файлу:
/www/htdocs/nether/http/helloworld/application/views/scripts/index/dashboard-stats.phtml
Что я хочу сделать, так это сохранить папку helloworld в элементе массива. В этом примере имя папки helloworld находится на 5 месте. Но при размещении этого на другом веб-сервере это может быть на втором или третьем месте. Как сделать это автоматически?
У меня есть код, который работает, см. Ниже.
$pieces = explode($_SERVER["DOCUMENT_ROOT"], __FILE__);
$parts = explode("/", $pieces[1]);
echo $parts[1];
Мой вопрос в том, что, помимо автоматического выполнения этого, возможно ли сделать это менее чем за 3 строки кода?
Комментарии:
1. Ваш вопрос, как это сделать автоматически? или это возможно сделать менее чем за 3 строки кода? Кроме того, вы пытаетесь получить
helloworld
элемент каждый раз или это будет что-то другое? Пожалуйста, укажите более конкретные критерии.
Ответ №1:
Если вы используете PHP 5.4.0, вы можете сделать следующее:
echo explode("/",explode($_SERVER["DOCUMENT_ROOT"], __FILE__)[1])[1];
Однако я бы предпочел вашу оригинальную версию, поскольку ее намного легче читать, и вы можете проверить результирующие массивы, чтобы убедиться, что в них есть как минимум 2 элемента.