Если он не должен быть динамическим, вы можете сделать это так:
switch(true)
{
case stripos($_SERVER['REQUEST_URI'], 'garden'):
return 'garden';
break;
case stripos($_SERVER['REQUEST_URI'], 'construction'):
return 'construction';
break;
default:
return 'default';
break;
}
Вышесказанное довольно явно. Более компактное решение может быть
function getCategory($categories)
{
foreach($catgories as $category) {
if stripos($_SERVER['REQUEST_URI'], $category) {
return $category;
}
}
}
$categories = array('garden', 'construction', 'indoor');
echo getCategory($categories);
Это не даст вам первое слово после /
, но просто проверьте, существует ли одно из ваших ключевых слов в запрошенном URI, и верните его.
Вы также можете использовать parse_url , чтобы разделить URI на его компоненты и работать с функциями String в компоненте path
, например,
$path = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);
В www.example.com/garden-design.html?foo=bar
это даст вам только часть garden-design.html
. В вашем сценарии вы, вероятно, все равно сделаете на нем полоски, так что вы можете сделать это прямо на URL, а не анализировать его.