我正在建立一个类似于Facebook的时间表...有不同类型的帖子,每种都涉及各种各样的数据,但仍然高度模板化。
我想知道是否最好将大型多维数组传递到每个子视图(时间轴上的每个项目),或者如果最好简单地传递对象(例如“用户”对象),那么sub view可以使用对象的功能吗?
是否比其他人更灵活,有人知道Facebook如何处理这个问题吗?
答案 0 :(得分:3)
在我看来阵列是个坏主意。许多框架将对象传递给视图,但也有一些框架放入视图数组(例如cakePHP)。
我和蛋糕一起工作,在视图中处理“阵列”数据是噩梦
$data['blah']['bleh']['bluh']['puh']['some_other_long_array_key_for_difference']['and']['so']['on']['fuuuuuu']
使用对象,它们是为了简化我们的生活;]
答案 1 :(得分:1)
我不能告诉你facebook如何处理这个,但通常对象通常更灵活。
您可以使用__toString
function来回显它们。如果所有传递到视图中的对象都被自动修饰,则可以非常灵活。
如果使用ArrayAccess
interface,它们的行为就像数组一样。
通常:对象比静态的数组更具动态性,因此对象更灵活。