RESTful URLを処理する最も適切な方法が何であるか把握できません。RESTful URLのPHPの処理
http://localhost/products
http://localhost/products/123
http://localhost/products/123/color
もともと:
RewriteRule ^([^/]*)([/])?([^/]*)?([/])?(.*)$ /index.php?handler=$1&productID=$3&additional=$5 [L,QSA]
そして私は不可解だ:私はmod_rewriteのを使用している今のよう
http://localhost/index.php?handler=products&productID=123&additional=color
私は、URLのこれらのように抱えていますindex.phpのリクエストをまとめて:
if ($_GET['handler'] == 'products' && isset($_GET['productID'])) {
// get product by its id.
}
私はいくつかのように1つの文字列としてGET-クエリを作成見てきました。そして、
if ($_GET['handler'] == 'products/123/color')
、あなたが例えば行うクエリ文字列から値を取得するために正規表現を使うのか?
これは、これらのURLを処理するためのより良いアプローチですか? これらの異なるアプローチの長所と短所は何ですか? もっと良い方法がありますか?
「」これは私がこれらのタイプのURLが気に入らない理由です。このような位置パルムは、名前/値パームとしては扱いにくいものではありません。 ' ' –