Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 用于多级url的面包屑_Php_Yii - Fatal编程技术网

Php 用于多级url的面包屑

Php 用于多级url的面包屑,php,yii,Php,Yii,我想创建多级面包屑,比如如果用户转到主页->步骤1->步骤2->步骤3页面,然后转到步骤4:我想看到我的面包屑主页:->步骤1->步骤2-步骤3->步骤4 这是我的密码: <?php $path = parse_url($_SERVER['HTTP_REFERER'],PHP_URL_PATH); $parts = explode('/',$path); $stepname='Step'.$step->step_code; if (count($pa

我想创建多级面包屑,比如如果用户转到主页->步骤1->步骤2->步骤3页面,然后转到步骤4:我想看到我的面包屑主页:->步骤1->步骤2-步骤3->步骤4

这是我的密码:

<?php 
    $path = parse_url($_SERVER['HTTP_REFERER'],PHP_URL_PATH);
    $parts = explode('/',$path);
    $stepname='Step'.$step->step_code;
    if (count($parts) < 2)
    {
        echo("home");
    }
    else
    {
        for ($i = 2; $i < count($parts); $i++)
        {
            if (!strstr($parts[$i],"."))
            {
                echo("<a href=\"");
                for ($j = 0; $j <= $i; $j++) 
                {
                    echo $parts[$j]."/";
                };
                echo("\">". str_replace('-', ' ', $parts[$i])."</a> » ");
            }
        };
    };  
?>

但它只显示主页->步骤3>步骤4,而不显示步骤2和步骤3。
实际上我想要多级面包屑。

我建议使用Yii内置类

除此之外,
if
语句中还有逻辑错误。仅当没有其他项目时,主页才会显示

echo
home之后移动
if

echo("home");

if (count($parts) > 2)
{
...