PHP 替换 URL 中的变量

Posted

技术标签:

【中文标题】PHP 替换 URL 中的变量【英文标题】:PHP Replace Variables in URL 【发布时间】:2011-04-08 16:57:05 【问题描述】:

我想知道是否可以重写为在 htaccess 中编写的重写而设计的 URL

例如

我有网址:http://example.com/page.php?page=5&action=something

但我想将 URL 更改为:example.com/page/5/something

这只是为了href,htaccess位已经解决了。

【问题讨论】:

是什么阻止您手动操作? 没什么,只是想知道有没有办法通过 PHP 做到这一点:) 我只需要将 ?page= 替换为 '/' 基本上但即使页面是不同的东西,比如操作 任何具有搜索和替换功能的半体面的 IDE 都可以轻松处理这个问题。 您可以编写一个实用函数,在普通版本和“SEF”版本之间进行转换,然后如果您的方案发生更改,您可以更新该函数,而不必再次手动更改链接。 【参考方案1】:
function rewritelink($link)
    $link = str_replace('.php','', $link);
    $pattern = "/\?[^=]*=/";
    $replacement = '/';
    $link = preg_replace($pattern, $replacement, $link);
    $pattern = "/\&[^=]*=/";
    $replacement = '/';
    $link = preg_replace($pattern, $replacement, $link);
    return $link;

【讨论】:

以上是关于PHP 替换 URL 中的变量的主要内容,如果未能解决你的问题,请参考以下文章

如何在 PHP 中的变量中用空格替换制表符?

替换webpack包中的变量,而不会破坏源映射并且无需重建

PHP将变量附加到地址栏中的url

PHP 通过CURL将URL中的内容抓取到PHP变量

将变量从 PHP/MySQL 传递给 actionscript 以播放音频文件

php require_once 文件路径中的变量