mysql_fetch_array(),mysql_fetch_row(),mysql_fetch_assoc()到底有何不同
我在网上经常看到有人问它们仨兄弟有何不同,但是好像问的人又不去实践一下,而我也想看看它们到底有什么不同呢?
在这里我只从结果上来分析,不从它们执行效率上来说(我也不是高手哈....^_^)。
对于"大哥" mysql_fetch_array()它的结果为:
array
0 => string '1' (length=1)
'uuid' => string '1' (length=1)
1 => string 'FC_lamp' (length=7)
'username' => string 'FC_lamp' (length=7)
2 => string '1' (length=1)
'age' => string '1' (length=1)
3 => string '2' (length=1)
'cla_t' => string '2' (length=1)
对于"二哥" mysql_fetch_row()它的结果为:
array
0 => string '1' (length=1)
1 => string 'FC_lamp' (length=7)
2 => string '1' (length=1)
3 => string '2' (length=1)
对于“小弟"mysql_fetch_assoc()(这个我最喜欢)它的结果为:
array
'uuid' => string '1' (length=1)
'username' => string'FC_lamp' (length=7)
'age' => string '1' (length=1)
'cla_t' => string '2' (length=1)
从结果中我们可以清楚的看到:
mysql_fetch_array既出现字段键名,还会现出额外的数字键名。
mysql_fetch_row只出现额外的数字键名,不出现字段键名(另:mysql_num_rows输出被查寻的影响数)
mysql_fetch_assoc只出现字段键名,不出现额外的数字键键名