我想编写一个多页的菜单导航,但不正确地将工作,我怀疑,这是值得做的线RecursiveIteratorIterator使多级动态菜单在PHP中,任何帮助,将不胜感激。我在想什么在解决方案,但也许我走得很远。谢谢您的帮助。 这里是我的代码:尝试使用RecursiveIteratorIterator
<ul id="nav">
<?php
//searchWebsitePagesPath("blog.php");
?>
<li><a href="<?php echo searchWebsitePagesPath('index.php'); ?>">Home</a></li>
<!-- <li><a href="index.php" id="here">Home</a></li> -->
<li><a href="<?php echo searchWebsitePagesPath('blog.php'); ?>">Journal</a></li>
<li><a href="<?php echo searchWebsitePagesPath('gallery.php'); ?>">Gallery</a></li>
<li><a href="<?php echo searchWebsitePagesPath('files_upload.php'); ?>">Upload</a></li>
<li><a href="<?php echo searchWebsitePagesPath('contact.php'); ?>">contact</a></li>
<li><a href="<?php echo searchWebsitePagesPath('register.php'); ?>">Register</a></li>
</ul>
<?php
function searchWebsitePagesPath($pageName){
// echo ("$pageName");
// $files = "";
$files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator('.'));
$my_path="";
$myArray="";
$pathReplace="";
$finalPathReplace="";
foreach ($files as $file) {
if($file->getFilename() === $pageName){
$pathReplace=str_replace (str_replace('/','\\',$_SERVER['DOCUMENT_ROOT']),'',$file->getRealPath());
$finalPathReplace = $pathReplace ;
// echo $finalPathReplace;
$myArray=explode("\\",$pathReplace) ;
$count= count($myArray);
$reverted = new ArrayIterator(array_reverse($myArray));
$server_path="" ;
for($i=1;$i<$count;$i=$i+1) {
$server_path =$server_path."../";
}
$my_path=$server_path.$reverted[$count-1];
}
}
$my_path="\"$my_path\"" ;
$files = "";
$files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator("$my_path"));
foreach ($files as $file) {
if($file->getFilename() === $pageName){
$pathReplace=str_replace (str_replace('/','\\',$_SERVER['DOCUMENT_ROOT']),'',$file->getRealPath());
$finalPathReplace ='/'.str_replace ('\\','/',$pathReplace) ;
return $finalPathReplace;
}
}
}
?>
将其缩小到_relevant_代码,并明确陈述_question_。 – 2012-04-12 04:23:07