使用php获取页面目录

使用php获取页面目录,php,Php,我要做的是像这样获取我的页面目录 Home / Clothes / Something <a href="example.com">Home</a> / <a href="example.com/clothes/">clothes</a> / <a href="example.com/clothes/something.php">Something</a> 我试过这个,但我不太明白,但它不工作,因为我想它 <?ph

我要做的是像这样获取我的页面目录

Home / Clothes / Something
<a href="example.com">Home</a> / <a href="example.com/clothes/">clothes</a> / <a href="example.com/clothes/something.php">Something</a>
我试过这个,但我不太明白,但它不工作,因为我想它

<?php

// current directory
echo getcwd() . "\n";

chdir('cvs');

// current directory
echo getcwd() . "\n";

?>

下面是我需要做的示例

我的页面是example.com/costs/something.php

在“something.php”页面上,我想重复这样的内容

Home / Clothes / Something
<a href="example.com">Home</a> / <a href="example.com/clothes/">clothes</a> / <a href="example.com/clothes/something.php">Something</a>
//
我忘了这叫什么了,但希望你能理解

<?php 
    $path = $_SERVER["PHP_SELF"];
    $parts = explode('/',$path);
    if (count($parts) < 2)
    {
    echo("home");
    }
    else
    {
    echo ("<a href=\"/\">Home</a> &raquo; ");
    for ($i = 1; $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> » ");
            }
        else
            {
            $str = $parts[$i];
            $pos = strrpos($str,".");
            $parts[$i] = substr($str, 0, $pos);
            echo str_replace('-', ' ', $parts[$i]);
            };
        };
    };  
?>

尝试以下方法:

$subPath = '';
$path = explode('/', $_SERVER['REQUEST_URI']);
array_shift($path);

foreach ($path as $segment) {
  $subPath.= $segment.'/';
  echo "<A HREF=\"http://www.php.loc/$subPath\">$segment</A> / ";      
}
$Pages = [
  '/clothes' => 'Clothes',
  '/clothes/something.php' => 'Something'
];

$subPath = '';
$BreadCrumbs = [];
$path = explode('/', $_SERVER['REQUEST_URI']);
array_shift($path);

foreach ($path as $segment) {
  $subPath.= '/'.$segment;
  $BreadCrumbs[] = "<A HREF=\"http://www.php.loc$subPath\">$Pages[$subPath]</A>";
}

echo implode(' &gt; ', $BreadCrumbs);
[编辑]

好的,最后一步:

<?php
    $Pages = array(
      'clothes' => 'Clothes',
      'something' => 'Something'
    );

    $path = $_SERVER["PHP_SELF"];
    $parts = explode('/',$path);
    if (count($parts) < 2)
    {
    echo("home");
    }
    else
    {
    echo ("<a href=\"/\">Home</a> &raquo; ");
    for ($i = 1; $i < count($parts); $i++)
        {
        if (!strstr($parts[$i],"."))
            {
            echo("<a href=\"");
            for ($j = 0; $j <= $i; $j++) {echo $parts[$j]."/";};
            echo("\">". str_replace('-', ' ', $Pages[$parts[$i]])."</a> &raquo; ");
            }
        else
            {
            $str = $parts[$i];
            $pos = strrpos($str,".");
            $parts[$i] = substr($str, 0, $pos);
            echo str_replace('-', ' ', $Pages[$parts[$i]]);
            };
        };
    };  
?>


这太好了,亲爱的,但我如何更改我想要的页面名称?我如何在输出中放置>而不是/嗯,您可以在输出中更改/到>。我不知道你把页面名称改成你想要的是什么意思。好吧,我改了/改成>,但我的意思是现在用代码我得到了文件夹名和页面名,就像这个文件夹/名称。php我开始像这样“文件夹>名称>”,而且endOK不应该有>,我想我明白你的意思,虽然不确定。查看我的编辑,看看这是否对你有用。非常感谢你的辛勤工作,亲爱的,但是我不知道如何修复它们