h"/> h">

ホームページ  >  記事  >  バックエンド開発  >  PHP フレンドリーな URL_PHP チュートリアルの実装

PHP フレンドリーな URL_PHP チュートリアルの実装

WBOY
WBOYオリジナル
2016-07-13 17:35:151090ブラウズ

次のコードは主に、検索エンジンが好む擬似静的実装です

他のWebサイトでもこのようなURLをよく見かけますよね?
http://www.xxx.com/module/show/action/list/page/7
or
html">http://xx.com/module/show/action/show/id/8.shtml拡張子
または
http://xx.com/module/show/action/show/id/8?word=ss&age=11
このように
今日、このメソッドの実装を発表し、独立して公開します 最も単純なコード
関数は次のとおりです。主に関数を使用する方が便利なため、クラスにカプセル化されません。

/**
* フレンドリーな URL アクセスを取得します
*
* @accesspublic
* @return array
*/
function getQueryString(){
$_SGETS =explode("/",substr($_SERVER[PATH_INFO],1));
$_SLEN = count($_SGETS );
$_SGET = $_GET;
for($i=0;$i<$_SLEN;$i+=2){
if(!empty($_SGETS[$i]) && !empty($_SGETS[$ i+1])) $_SGET[$_SGETS[$i]]=$_SGETS[$i+1];
}
$_SGET[m] = !empty($_SGET[m]) && is_string($_SGET[ m]) ? トリム($_SGET[m]).アクション:indexAction;
$_SGET[a] = !empty($_SGET[a]) && is_string($_SGET[a]) ? ) : run;
return $_SGET;
}
/**
* リンク URL を生成します
*
* @accesspublic
* @param array $arr
* @return string
*/
function setUrl($arr){
global $Global;
$queryString=;
if($Global[urlmode]==2) {
foreach($arr as $k=> $v){
$queryString.=$k./.$v./;
}
}
$queryString.=$Global[urlsuffix];
return $queryString ;
}
?>
使い方はとても簡単です
$_GET= getQueryString();
?>
しかし、これだけでは十分ではなく、これだけで達成できます
http://www. xxx.com/index .php/module/show/action/list/page/7 はこんな感じです
真ん中に余分なindex.phpがあるので、それを削除して書き直す必要があります
が、いくつかのファイルは書き直さなければなりません。スタイル写真など、これを望まない場合は、条件に入れてください
.htaccessファイルを作成します

RewriteEngine on

RewriteCond $1 !^(index.php|css|pics|主題|js|robots.txt)
RewriteRule ^(.*)$index.php/$1 [L]
これでOKです、テストしてみましょう今

$_GET= getQueryString();
print_r($_GET);
?>

http://www.bkjia.com/PHPjc/508354.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/508354.html技術記事次のコードは主に、このような他のサイトの URL をよく見かける検索エンジンのような擬似静的実装です。 http://www.xxx.com/module/show/action/list/page/7 または html">h...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。