drupal 代码实现URL重写

yipeiwu_com6年前PHP代码库
以下是实现例子:
复制代码 代码如下:

/*
* 伪地址转原地址 (url_alter)
*/
function example_url_inbound_alter(&$path, $original_path, $path_language)
{
if (preg_match('|^article(/.*)|', $path, $matches)) {
$path = 'node'. $matches[1];
}
}
/*
* 原地址转伪地址 (url_alter)
*/
function example_url_outbound_alter(&$path, &$options, $original_path)
{
if (preg_match('|^node(/.*)|', $path, $matches)) {
$path = 'article' . $matches[1];
}
}

PS: 实现hook_url_inbound_alter时不知为何会调不出实现函数,可能因为HOOK过早加载,没有把module加载完全。所以我的做法是写在URL重写模块中,例如subpath_alias

相关文章

PHP中常用的魔术方法

我们在PHP中经常用到魔术方法,像构造方法,析构方法等等魔术变量,下面总结一下一些常用的魔术变量: __construct(),__destruct(),__clone(),__auto...

PHP巧妙利用位运算实现网站权限管理的方法

首先我们先定义4个常量来设定四种权限: ===================================== define(ADD,1);//增加数据库记录的权限 define(...

解析php根据ip查询所在地区(非常有用,赶集网就用到)

dat文件,关于ip对应地区的信息文件qqwry.dat文件网上自己下载class类文件,解析qqwry.data文件的IpLocation.php文件复制代码 代码如下:<?ph...

php适配器模式简单应用示例

本文实例讲述了php适配器模式简单应用。分享给大家供大家参考,具体如下: 适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,...

PHP获取毫秒级时间戳的方法

本文实例讲述了PHP获取毫秒级时间戳的方法。分享给大家供大家参考。具体分析如下: PHP本身没有提供获取毫秒级时间戳的函数,java里面可以通过gettime();获取。如果是要与jav...