严格标准:只应通过动态面包屑引用传递变量

时间:2016-01-18 22:46:28

标签: php html dynamic breadcrumbs

现在我正在开发一个有3个主要布局,标题,主要布局和页脚的网站,它们都由同一个控制器调用。主要布局根据请求而变化。但页眉和页脚将始终相同。在我的标题中有一个dyinamic面包屑,我在这篇文章中从多米尼克巴恩斯那里得到了。

PHP Simple dynamic breadcrumb

问题在于我不知道是否将它放在正确的位置,因为我有2个错误:

  

注意:未定义的索引:HTTPS严格标准:仅限变量   应该在

中通过引用传递

我把Dominic Barnes的代码放在我的html中:

<?php
function breadcrumbs($separator = ' &raquo; ', $home = 'Home') {

$path = array_filter(explode('/', parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH)));


$base = ($_SERVER['HTTPS'] ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'] . '/';


$breadcrumbs = Array("<a href=\"$base\">$home</a>");

$last = end(array_keys($path));

foreach ($path AS $x => $crumb) {
    $title = ucwords(str_replace(Array('.php', '_'), Array('', ' '), $crumb));

    if ($x != $last)
        $breadcrumbs[] = "<a href=\"$base$crumb\">$title</a>";
    else
        $breadcrumbs[] = $title;
}
return implode($separator, $breadcrumbs);
}

?>

<div class="breadcrumb-line breadcrumb-line-wide">
  <ul class="breadcrumb">
   <li class="active" >
    <p><i class="icon-home2 position-left"></i><?= breadcrumbs() ?></p>
   </li>
 </ul>
</div>

Dominic的代码,应该在我的控制器上或我的视图html上?

对不起,如果这是一个菜鸟问题,但我对这一切都是新的。

1 个答案:

答案 0 :(得分:0)

可能您的变量$_SERVER['HTTPS']未定义。

行后:

$base = ($_SERVER['HTTPS'] ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'] . '/';

插入:var_dump($_SERVER['HTTPS'])。 并检查价值。