哪个是最优选的数据结构来输出,数组或对象?为什么?

时间:2013-08-21 04:18:02

标签: php wordpress

输出格式是否会影响脚本的整体性能?例如,我们有时会选择在基于php的cms中选择输出格式(数组或对象)。

我知道的唯一区别是:

如果我们选择数组,我们使用

$example['key1'] = $dummydata;

但如果输出格式为" object",我们使用

$example->key1 = $dummydata;

这是唯一的原因(只是可访问性)为什么我们应该选择其中一个选项?或者还有其他事情需要考虑?这些格式哪种格式更好? 例 这是来自wordpress的代码片段,我们可以选择输出类型

$wpdb->get_row('query', output_type, row_offset);

$sql = "select * from ".$wpdb->prefix."sampletable where user_id =".$user->ID;
$result_set = $wpdb->get_row($sql, ARRAY_A); 

3 个答案:

答案 0 :(得分:2)

如果仅使用stdClass对象,则几乎没有任何区别。在这种情况下,我甚至会选择数组,因为它们更灵活(例如,键名更灵活),并且你有大量的函数可以使用(数组合并,差异等)。

best 选项是完整的OO并将您的数据结构定义为类。这为您提供了类型安全性,类型可取性,对象方法等。同样,只有“无类型”stdClass对象不会为您提供任何内容,甚至不提供数组的功能丰富性。

答案 1 :(得分:0)

我搜索了wordpress output_typethis page in the Codex

我在这个答案中给出的通用对象vs数组参数在这里并不相关,我觉得。之后请考虑您希望对数据做些什么。如果您要编写自己的函数来处理数据,那么数组就像对象一样好。

如果您的操作在某些对象中使​​用现有逻辑,例如WP_Query,那么请务必使用OBJECT返回类型。

答案 2 :(得分:-2)

阵  不重复友好,通常你建造一次,使用一次  没有数据保护友好  不是默认参考友好  公众友好 宾语 重用友好,你可以在项目的其他地方使用它 数据保护友好 默认参考友好