آخر مرة كتبت فيها عن تصميم عنوان URL الخاص بمحرك البحث الصديق - كنت أعاني من هذا الأمر وأردت تحقيق ذلك http://www.myhost.com/foo.php?a=A&b=B&c=C -> http:/ /www.هناك بالفعل طرق مختلفة لتحويل عنوان URL الخاص بـ myhost.com/foo.php/a/A/b/B/c/C .
على سبيل المثال، أستخدم مضيفًا افتراضيًا وأريد تحسين عنوان URL ليس لديك أذونات خادم، يمكنك البدء من PATH_INFO في الوقت الحالي
عند الوصول إلى عنوان URL http://www.myhost.com/foo.php/a/A/b/B/c/C ، إذا كان Apache. تم تشغيلAllowPathinfo، استخدم php Access $_SERVER['PATH_INFO'] للحصول على سلسلة الأحرف a/A/b/B/c/C ثم استخدم php لتحليلها:
PLAIN TEXTPHP:
if(!empty($ _الخادم['PATH_INFO'])) {
$paths = Explosion('/', substr($_SERVER['PATH_INFO'], 1));
for($i = 0, $cnt = count($paths); $i <$cnt; $i++)
$_GET[$paths[$i]] = @(string)$paths[++$i];
}
بهذه الطريقة، يمكنك ببساطة تحويل PATH_INFO إلى المصفوفة $_GET العامة، والتي تتمتع أيضًا بميزة
http://www.myhost.com/foo.php?a=A&b=B&c=C
http://www.myhost.com/foo.php/a/A/b/B/c/C
يمكن الوصول إلى عناوين URL المذكورة أعلاه في نفس الوقت، مما يضمن تعدد الاستخدامات.