PHP 自动生成导航网址的最佳方法 v20130826
经常制作开发不同的网站的后台,写过很多种不同的后台导航写法。
最终积累了这种最写法,算是最好的吧。附上截图和代码如下(PHP+HTML)
<?php $linkArr = array(
'index.php' => '汇总首页',
'List.php' => '列表',
'Detail.php' => '详细',
'http://qzone.qq.com/' => 'QQ空间',
'http://qun.qzone.qq.com/group'=> '腾讯群首页',
'login.php?act=logout' => '安全退出',
);
?> <?php
foreach($linkArr as $k => $v)
{
if(basename($k) == basename($_SERVER['PHP_SELF']))
{
$class = ' class="curr-ac"';
if(!defined('PAGE_TITLE')) define('PAGE_TITLE', $v);
} else {
$class = '';
}
echo '<input type="button" value="'.$v.'" '.$class.' name="ac-button" _url="'.$k.'" onclick="Daohang(this)" />';
}
?>
<script>
var PAGE_TITLE = <?php echo json_encode(defined('PAGE_TITLE') ? PAGE_TITLE : '');?>;
if(PAGE_TITLE) document.title = PAGE_TITLE + ' ' + document.title;
function Daohang(obj)
{
var url = obj.getAttribute('_url');
if(/^https?:\/\/.+/i.test(url))
{
window.open(url,'');
} else {
window.location = url;
}
}
</script>
当然你也可以分开写。看自己如何应用。
PHP 自动生成导航网址的最佳方法 v20130826的更多相关文章
- PHP自动生成后台导航网址的最佳方法
'http://www.jbxue.com'=> '脚本学堂首页', </script>
- eclipse自动生成变量名声明(按方法返回值为本地变量赋值)
eclipse自动生成变量名声明(按方法返回值为本地变量赋值) ctrl+2+L 这个快捷键可自动补全代码,极大提升编码效率! 注:ctrl和2同时按完以后释放,再快速按L.不能同时按! 比如写这句代 ...
- Markdown使用TOC自动生成导航栏
经常使用markdown 的玩家一定很想要一个自动生成的导航栏吧,自己写的基本思路就是 轮询监听滚动条的位置,通过抛锚和跳锚实现,这里介绍一下今天的主角,markdown-toc插件: https:/ ...
- Mybatis Generator自动生成的mapper只有insert方法
– Mybatis Generator 生成的mapper只有insert方法 – 首先检查generatorConfig.xml中table项中的属性 enableSelectByPrimaryKe ...
- [转]mysql自动定时备份数据库的最佳方法-支持windows系统
网上有很多关于window下Mysql自动备份的方法,可是真的能用的也没有几个,有些说的还非常的复杂,难以操作. 我们都知道mssql本身就自带了计划任务可以用来自动备份,可是mysql咱们要怎么样自 ...
- Microsoft Dynamics CRM4.0 创建单据的时候,自动生成单据编号的通用方法
一.新建两个实体,具体如下: 单据流水号(new_maxbillcode) 显示名称 名称 类型 格式 最大长度 需求级别 IME模式 备注 名称 new_name nvarchar 文本 100 业 ...
- windows系统——mysql自动定时备份数据库的最佳方法
网上有很多关于window下Mysql自动备份的方法,可是真的能用的也没有几个,有些说的还非常的复杂,难以操作. 我们都知道mssql本身就自带了计划任务可以用来自动备份,可是mysql咱们要怎么样自 ...
- 简单的 自动生成 二维码 PHP 方法
方法一:<style type="text/css">.eweima{ width:200px; height:200px; margin:auto;}</ ...
- Android DataBinding不能自动生成ViewDataBinding类的解决方法
如果Build.gradle和Layout文件配置正确,仍无法生成ViewDataBinding类. 经测试,Gradle的sync无效,clean project无效,invalidate and ...
随机推荐
- ASP.NET MVC3细嚼慢咽---(1)网站创建与发布
这一节我们演示下怎样使用VS2010创建与发布MVC3建立的网站.使用VS2010创建MVC3.0网站,需要下载MVC3.0的安装包,这个大家可以去网络上下载. 1.项目创建 ...
- MarkdownPad 破解学习
最近学习 Markdown,从网上下载了 Windows 下的编辑器:MarkdownPad.这款软件分为免费版和专业版(收费), 对于普通用户来说免费版已经足够,专业版比免费版多了如下几个功能: 一 ...
- vmware10中开启Intel VT-x
记得刚接触linux的时候,是在win7下使用vmware虚拟机来安装linux,这样就可以方便的一边使用win7娱乐,一边在linux下进行学习.后来发现这种方式使得win7很卡,虚拟机也很卡,让人 ...
- 演义江湖PC端意见汇总
写在前面: 1.自己的游戏自己玩玩爽不爽,自己爽了才能说玩家可能会接受,自己都玩不下去玩家凭什么玩你的游戏 2.如果你负责美术,那么你到游戏中看看,你如果不能接受,玩家也会觉得游戏很丑 3.如果你负责 ...
- Mellanox vma
1,Mellanox offical vma Installation guide personal reading summarize VMA是一个消息加速器messaging accelerato ...
- incompatible
- 转】MySQL客户端输出窗口显示中文乱码问题解决办法
原博文出自于: http://www.cnblogs.com/xdp-gacl/p/4008095.html 感谢! 最近发现,在MySQL的dos客户端输出窗口中查询表中的数据时,表中的中文数据都显 ...
- C# rmi例子
接口定义 实体定义,注意需要序列化 using System; namespace Interface { [Serializable] public class DataEntity { publi ...
- Leetcode237:Delete Node in a Linked List
Write a function to delete a node (except the tail) in a singly linked list, given only access to th ...
- HDU 1242 Rescue (BFS(广度优先搜索))
Rescue Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submis ...