get或basename()更有效吗?

时间:2011-06-07 14:31:58

标签: php get url-parsing

以下哪项更有效?

  1. 在令牌上使用get函数(随机),例如:

    http://www.example.com/category/subcategory/subsubcategory?value=random $_GET['value']

  2. 将令牌部分设为URL并对其进行解析,例如:

    $url="http://www.example.com/category/subcategory/subsubcategory/random" basename($url)

  3. 实际上,basename比使用explode或substr(strrchr())更有效吗?

3 个答案:

答案 0 :(得分:2)

使用basename。您无需再创建其他功能。

同样在这种情况下,表现完全无关紧要

答案 1 :(得分:2)

$ _ GET显然更有效率,因为它不会计算任何东西

尽管如此,除非你计划在你的剧本中调用几千次,否则它可以忽略不计,所以要使用你感觉更好的东西。

$t = microtime(true);
for($i = 0; $i<1000; $i++) {
    $x = basename($url);
}
printf("%.3f\n", microtime(true) - $t);
  

0.010

答案 2 :(得分:0)

  1. 不要冒微观优化。
  2. 如果你想要进行微观优化,那么自己测试#1 vs#2是非常简单的。
  3. 无论性能差异如何,通常首选#2,因为您获得了友好的网址。