PHP – 使用pathinfo变量使相对路径无法工作
发布时间:2020-12-13 16:00:18 所属栏目:PHP教程 来源:网络整理
导读:我希望自己能够实现某种cms.我看到我可以捕获Apache环境变量,称为PATH_INFO,所以这样我可以在我的网站上制作动态部分(就像joomla一样). 例如: stackoverflow.com/index.php/section1/article22 目前我正在开发一个功能,通过这样做来找出所需的部分和文章:
我希望自己能够实现某种cms.我看到我可以捕获Apache环境变量,称为PATH_INFO,所以这样我可以在我的网站上制作动态部分(就像joomla一样).
例如: stackoverflow.com/index.php/section1/article22 目前我正在开发一个功能,通过这样做来找出所需的部分和文章: $url_seccion = $_SERVER['PATH_INFO']; $secciones_array = array_values(array_filter(explode('/',$url_seccion))); 这部分工作正常,我遇到的问题是我现在所有的相对路径都被破坏了.有人可以解释一下为什么会发生这种情况,我能做些什么来解决它? (请不要告诉我必须使用绝对路径…) 解决方法
例:
$url = "stackoverflow.com/index.php/section1/article22"; $myArray = array_slice( explode('/',$url),2 ); echo "section: ". $myArray[0] ."<br /> article: ". $myArray[1]."<br />"; if(isset($myArray[0])) { $section = $myArray[0]; } else { $section = ""; } if(isset($myArray[1])) { $article = $myArray[1]; } else { $article = ""; } switch(strtolower($section)) { default: echo "home"; break; case 'section1': echo "function for find and show my article: ". $article; break; } 要使用保存在db中的部分,可以使用select来查找它的id然后再查找 要将所有请求重定向到index.php,请使用: 的.htaccess Options -Indexes +FollowSymLinks RewriteEngine On RewriteBase / RewriteCond $0 !^(index.php|css|js|img) RewriteRule ^(.*)$index.php [L] index.php文件: $url = addslashes($_SERVER['REQUEST_URI']); $myArray = array_slice( explode('/',1 ); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |