在CakePHP 3中,find
返回一个对象而不是一个数组。我知道您可以使用toArray()
将对象转换为数组。我正在试图决定使用哪个“更好”。我知道这可以被视为一个主观问题,但我不介意,我对你的答案感兴趣。
我读过有关对象与数组的内容,但是从谷歌搜索和阅读中找不到一个好的答案。人物X说使用对象更好或更快,Person Y说使用数组是。所以我想我会问这里。
因此,在记住CakePHP的同时,如果您使用返回的对象或将其转换为数组性能,这是否重要?
答案 0 :(得分:3)
性能明智,取决于。 如果您在https://book.cakephp.org/3.0/en/orm/query-builder.html#getting-arrays-instead-of-entities
中禁用水合作用然后任何表现命中都可以忽略不计。 但是,如果执行查询然后在实体上调用toArray,那么性能会稍慢。
哪个更好,这在很大程度上取决于您的特定用例。 在某些情况下,最好有一个数组,有些情况下可能更喜欢该对象。没有上下文,哪个更好是无法回答的。