当前位置:  开发笔记 > 编程语言 > 正文

什么更快,数组查找(包括数组构建)或IF堆栈?

如何解决《什么更快,数组查找(包括数组构建)或IF堆栈?》经验,为你挑选了1个好方法。

我想知道哪个更好:

$lookup = array( "a" => 1, "b" => 2, "c" => 3 );
return $lookup[$key];

要么

if ( $key == "a" ) return 1
else if ( $key == "b" ) return 2
else if ( $key == "c" ) return 3

或者只是一个不错的开关......

switch($key){
case "a": return 1;
case "b": return 2;
case "c": return 3;
}

我总是喜欢第一种方法,因为我可以将数据与代码分开; 在这种规模上,它看起来很愚蠢,但规模更大,有数千行查找条目; PHP需要多长时间才能构建一个数组,然后每个请求只检查1或2个条目.

我认为它必须经过测试和计时,但我会说数组越大越复杂,它就越慢.

PHP应该能够比PHP代码更快地处理查找,但是首先构建数组肯定会占用大量的时间.



1> Marko..:

对于具有可测量性能的任何事物(不仅仅是3个条目),查找是最快的方式.这就是哈希表的用途.

推荐阅读
Life一切安好
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有