匹配uri字符串的最快方法

时间:2011-09-02 00:45:07

标签: php regex indexing uri

以下代码位于我网站的index.php文件中,每次查询我网站上的网页时都会运行。这两个requires都会执行各自的404错误页面,所以不用担心。在PHP中执行此操作的效率最高的方法是什么?

$cache = $_SERVER['REQUEST_URI'];

if(preg_match('/^\/blog/',$cache) || preg_match('/^\/portfolio/',$cache)){
  define('WP_USE_THEMES', true);
  // Loads the WordPress Environment and Template
  require('./wordpress/wp-blog-header.php'); 
}else{
  // Load codeigniter
  require('./codeigniter/index.php');
}

1 个答案:

答案 0 :(得分:1)

$cache = $_SERVER['REQUEST_URI'];

if (0 === strpos($cache, '/blog/') ||
    0 === strpos($cache, '/portfolio/'))
{
    define('WP_USE_THEMES', true);
    require('./wordpress/wp-blog-header.php'); 
}
    else
{
    require('./codeigniter/index.php');
}

不需要正则表达式,而且速度非常快。