我知道这样做很愚蠢,但我的情况是我在不同的文件夹中创建菜单。我尝试为菜单创建基本网址。
function getBaseUrl()
{
$currentPath = $_SERVER['PHP_SELF'];
$pathInfo = pathinfo($currentPath);
$hostName = $_SERVER['HTTP_HOST'];
$protocol = strtolower(substr($_SERVER["SERVER_PROTOCOL"],0,5))=='https://'?'https://':'http://';
return $protocol.$hostName.$pathInfo['dirname']."/";
}
使用基本网址,如 <?php echo getBaseUrl(); ?>
.我的问题是:
让我有菜单 aaa bbb ccc ddd.菜单aaa
页面在folder1/page1.php
里面
bbb
菜单的页面位于folder2/page2.php
内。我不能从一个菜单转到aaa
菜单bbb
菜单。
有人有想法吗?请建议
您可以使用按
标签索引的页面列表创建一个数组:
function getBaseUrl($naviItem)
{
var $navigation = array(
'aaa_menu' => '/folder1/page1.php',
'bbb_menu' => '/folder2/page2.php'
);
//$currentPath = $_SERVER['PHP_SELF'];
//$pathInfo = pathinfo($currentPath);
$hostName = $_SERVER['HTTP_HOST'];
$protocol = strtolower(substr($_SERVER["SERVER_PROTOCOL"],0,5))=='https://'?'https://':'http://';
// return the path relative to the passed navitem
return $protocol.$hostName.$navigation[$naviItem];
}
然后在 HTML 中,相对于要实现 baseURL 的导航项传递此标签:
<a href="<?php echo getBaseUrl('aaa_menu'); ?>">aaa</a>
<a href="<?php echo getBaseUrl('bbb_menu'); ?>">bbb</a>
你好什雷斯塔,这很容易,只需定义常量并使用
define('DOMAIN_URL', 'http://' . $_SERVER['SERVER_NAME'] . '/projectname/');
设置链接时 -
<a href="<?php echo DOMAIN_URL; ?>/folder1/page1.php">aaa</a>
<a href="<?php echo DOMAIN_URL ?>/folder2/page2.php">bbb</a>