使用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> » ");
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(' > ', $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> » ");
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> » ");
}
else
{
$str = $parts[$i];
$pos = strrpos($str,".");
$parts[$i] = substr($str, 0, $pos);
echo str_replace('-', ' ', $Pages[$parts[$i]]);
};
};
};
?>
这太好了,亲爱的,但我如何更改我想要的页面名称?我如何在输出中放置>而不是/嗯,您可以在输出中更改/到>。我不知道你把页面名称改成你想要的是什么意思。好吧,我改了/改成>,但我的意思是现在用代码我得到了文件夹名和页面名,就像这个文件夹/名称。php我开始像这样“文件夹>名称>”,而且endOK不应该有>,我想我明白你的意思,虽然不确定。查看我的编辑,看看这是否对你有用。非常感谢你的辛勤工作,亲爱的,但是我不知道如何修复它们