http://www.securityandcaffeine.com/2008/04/03/php-mysql-and-mysql_fetch_array/
上面的文章让我感到惊讶.它说:
mysql_fetch_array()- "1 - 使用引号!1/7的时间来$result['2']比较$result[2]"
知道这是否属实?
这似乎完全基于误解.看到这个引用,突出我的:
1 - 如果您引用值,则会浪费速度,但不要使用引号.根据Reinhold Weber的博客:#17:"
$row[’id’]快7倍$row[id]". 如果你这么做,经常......哎哟.
是的,$row['id']比语法错误更快$row[id],因为它$row[id]是一个语法错误,它试图解析一个常量,然后把它变成一个字符串,并同时抛出一个通知.但是$row[1]并且$row['id']都是有效的,并且应该执行非常相同的.如果查找数字索引和查找字符串索引之间存在差异,那么它必须非常小,以至于不值得花时间.
PHP数组实际上没有位置键但都是关联的启示是......并不是真正的新闻,因此没有广泛的速度问题.实际上,这个快速基准测试显示"数字字符串"索引很容易是所有这些索引的最慢查找:http://codepad.org/aeNJ2u3O
无论如何,你应该使用mysql_fetch_assoc或者mysql_fetch_row分别获得一个命名(字符串索引)或一个未命名(数字索引)数组.使用_fetch_array,这两种方式都可以获得,通常是不必要的.
如果您需要真实的性能数据,请根据您的使用情况对其进