簡體   English   中英

.htaccess 用獲取參數重寫 url

[英].htaccess rewrite url with get parameters

我正在嘗試重寫類似的東西。

http://127.0.0.1/code1/code2/get?a=8&q=7

code1 和 code2 正在改變

http://127.0.0.1/get.php?c1=code1&c2=code2&a=8&q=7

我嘗試了很多東西,例如

RewriteEngine On
RewriteRule ^get\.php$ - [L]
RewriteRule ^([^/]+)\/([^/]+)\/get?(.*)$ /get.php?c1=$1&c2=$2&$3 [L]

code1 和 code2 工作,但得到沒有。

================ 我有一個像這樣的測試 php 文件

<?php
echo $_GET['c1']."<br>";
echo $_GET['c2']."<br>";
echo $_GET['a']."<br>";
echo $_GET['q']."<br>";
?>

這就是我收到的。

code1
code2


RewriteRule ^(.*)/(.*)/get$ get.php?c1=$1&c2=$2 [L]

然后您將獲得c1c2的值。 獲取您的值的 rest

$katorymnd_uxqn  = explode("&", explode("?", $_SERVER['REQUEST_URI'])[1] );
print_r($katorymnd_uxqn);

為您提供剩余值的數組

Array ( [0] => a=8 [1] => q=7 ); 

您的頁面get.php代碼應如下所示

echo $_GET['c1']."<br>";
echo $_GET['c2']."<br>";


$katorymnd_uxqn  = explode("&", explode("?", $_SERVER['REQUEST_URI'])[1] );

$katorymnd_ldba = array();
$katorymnd_ldba[] = $katorymnd_uxqn;

print explode('=', $katorymnd_ldba[0][0], 2)[1]."<br>";
print  explode('=', $katorymnd_ldba[0][1], 2)[1]."<br>";

現在您可以按預期獲得所有值。

code1
code2
8
7

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM