Всем привет! Рад присоединиться к форуму, т.к. понял что PHP Это как воздух и мне его не хватает Не могу найти способ решения следующего вопроса: как из такой строки "/rubrika" получить строку "rubrika" и одновременно, если строка будет иметь вид "/rubrika/news" получить строку "rubrika" вместо слова rubrika может быть любое другое (только латиницей) с разной длинной символов Буду благодарен за любые подсказки.
Код (Text): <?php $str = '/aaasssddd/cccffgg/rrfftt/gghhff'; preg_match_all('/^\/?([a-z]+)\/?/i',$str,$matches); print_r($matches[1]); tornado(root):/home/440hz#>php pr.php Array ( [0] => aaasssddd )
Сори но не налазит на голову)) Опишу другими словами что необходимо реализовать: нужно для <body> присвоить класс, именем которого будет первая строка из URL, тоесть на странице с URL, например, )http://www.php.ru/forum/viewtopic нам необходимо <body class=""> превратить в <body class="forum"> как это реализовать?
1. парсишь строку запроса $_SERVER['что-то тут. не помню. надо посмотреть phpinfo()']. как я уже показал. 2. при выводе страницы подставляешь туда это значение
basename($_SERVER['REQUEST_URI']); - даст нам окончание URL: _http://www.php.ru/forum/viewtopic dirname($_SERVER['REQUEST_URI']); - даст дирикторию и поддиректорию (если есть): _http://www.php.ru/forum/viewtopic болдом выделил то что мы получим. Не один из вариантов не решает ТЗ. Кто то может привести код, решающий ТЗ?
http://www.php.net/manual/en/function.parse-str.php и парсить элемент массива path, как 440Hz написал
PHP: <?php function top_folder ($uri) { $a = explode ('/', $uri); return $a[1]; } echo top_folder ($_SERVER['REQUEST_URI']); ?> см. второй пост топика