2013-11-29 4 views
0

Я бы хотел, чтобы мой скрипт breadcrumb отображал только имя страницы (пример: pic), вместо имени страницы + строка запроса, если существует (пример: pic). Это мой крошка сценарий:Breadcrumb отображает строку запроса

<?php 
$crumbs = explode("/",$_SERVER["REQUEST_URI"]); 
foreach($crumbs as $crumb){ 
    echo '<li class="active">'; 
    echo ucfirst(str_replace(array(".php","_",),array(""," "),$crumb) . ' '); 
    echo '</li>'; 
} 
?> 

Как исключить все после «.php»? Спасибо за вашу помощь

+0

так и нужен сайт/активировать только? – sumit

+0

Да, я хочу исключить все, что не является списком патчей из breadcrumb – rmdy

+0

'$ _SERVER [" SCRIPT_NAME "];' –

ответ

1

использование parse_url() функции для получения части URL

Вы можете использовать это после некоторого редактирования

<?php 
$parsed=parse_url($_SERVER["REQUEST_URI"]); 
$crumbs = explode("/",$parsed['path']); 

print_r(parse_url($_SERVER["REQUEST_URI"])); 
foreach($crumbs as $crumb){ 
    echo '<li class="active">'; 
    echo ucfirst(str_replace(array(".php","_",),array(""," "),$crumb) . ' '); 
    echo '</li>'; 
} 
?> 
0
<?php 
$crumbs = explode("/",$_SERVER["PHP_SELF"]); 
$html=""; 
foreach($crumbs as $crumb){ 
    $crumb = ucfirst(str_replace(array(".php","_"),array(""," "),$crumb)); 
    if(trim($crumb)!=""){ 
     $html .= '<li class="active">'.$crumb.'</li>'; 
    } 
} 
$html = "<li>".ucfirst($_SERVER["HTTP_HOST"])."</li>".$html; 
echo $html; 

?>

Смежные вопросы