-1

次のように文字列を変換するにはどうすればよいですか。

[www.example.com?type=PC&brand=Dell&id=2]

[www.example.com/PC/Dell/2.html]

あなたの助けをありがとう!

4

2 に答える 2

3

最初のリンクを 2 番目のリンクにマップして、サイトの URL をより見栄えよくする場合は、.htaccessand Mod_rewrite!

これは正しい解決策です:

$str = "[www.example.com?type=PC&brand=Dell&id=2]";

$str = trim($str,"[]"); //Remove square brackets, we'll add them back later
$url = parse_url($str); //Parse the URL into an array

$query = $url["query"]; //Part after the ?

$parts = explode("&", $query); //Have each GET variable into an array element
$parts = array_map(function($e) {
    return preg_replace("/[^=]+=/", "", $e);
}, $parts); //Remove the part before the =.

$parts = implode("/", $parts); //Implode it back into a string.
$result = $url["path"] . "/" . $parts . ".html"; //Putting it back together
$result = "[$result]"; //I promised I'll put it back!

var_dump($result);
于 2012-11-03T13:58:58.253 に答える
2

.htaccess でこれを試してください

Options +FollowSymLinks
RewriteEngine on

RewriteRule /(.*)/(.*)/(.*)\.html www.example.com?type=$1&brand=$2&id=$3
于 2012-11-03T13:53:05.843 に答える