mysql_fetch_array、mysql_fetch_assoc mysql_fetch_object
这些功能都非常相似:
mysql_fetch_array(), mysql_fetch_assoc(), mysql_fetch_object()
我最近开始使用mysql_fetch_object因为我正在用PHP做更多的OOP。
但是,人们对哪一个最好使用以及为什么使用有什么看法,也许在哪种情况下最好使用它们。
感谢您的想法!
这些功能都非常相似:
mysql_fetch_array(), mysql_fetch_assoc(), mysql_fetch_object()
我最近开始使用mysql_fetch_object因为我正在用PHP做更多的OOP。
但是,人们对哪一个最好使用以及为什么使用有什么看法,也许在哪种情况下最好使用它们。
感谢您的想法!
mysql_fetch_array
将为您提供一个可以作为键的数组:
MYSQL_BOTH
MYSQL_ASSOC
mysql_fetch_assoc
MYSQL_NUM
获取按列名编制索引的结果可能是最有用的解决方案,至少更易于使用。
但是,在一个位置中,按 select 子句中字段的位置索引结果很有趣:当您有多个具有相同名称或别名的列时。
在这种情况下,由于数组中不能有两个具有相同索引的条目,因此只能使用列名作为索引来访问其中一列。
对于具有相同名称的其他列,必须使用数字索引。
这种情况可能是我唯一会使用的情况 - 我宁愿在我的查询中使用别名,以避免这种情况 - 在我看来,它更清楚。mysql_fetch_array
mysql_fetch_assoc
将为您提供一个数组,其中列名作为键,数据作为值。
实际上,没什么可说的。
mysql_fetch_object
会让你得到回报。
在两者之间进行选择,很可能取决于你如何开发你的应用程序:如果到处使用对象,第二个可能是最适合的。mysql_fetch_assoc
mysql_fetch_object
如果使用数组作为数据容器,则可以只使用第一个数组。
mysql_fetch_array() 将结果行提取为关联数组和/或数字数组。它返回与读取的行对应的字符串数组,如果没有更多行,则返回 FALSE。返回数组的类型取决于$result_type 的定义方式。
通过使用MYSQL_NUM,您只能获得数字索引(如$row[0],$row1等),即数字数组。
通过使用MYSQL_ASSOC,您只能获得关联索引(如$row[“id”],$row[“name”]等),即关联数组。
通过使用MYSQL_BOTH(默认值),您将获得一个同时包含关联索引和数字索引的数组。(如$row[0],$row[“name”]等)即数字数组和关联数组。
mysql_fetch_assoc() 将结果行作为关联数组读取。(列名作为键)。
mysql_fetch_object() 将结果行作为对象读取。
它返回一个对象,其属性与读取的行相对应,并将内部数据指针向前移动。
对我来说,使用mysql_fetch_assoc()有一些谚语,因为你可以使用数组函数,如array_walk和uasort()。