PHP数组和对象在一起 - 糟糕/良好实践?

时间:2013-07-05 21:18:42

标签: mysql arrays object laravel laravel-4

我从MySQL数据库中获取数据。结果将在对象中返回。

然后我可以像这样访问数据:

$db_data->row

在foreach循环中,我通过添加数组来改变$ db_data,例如:

foreach ($db_data as $data) $db_data->row->new_data = array('key' => 'value');

现在可以使用以下方式访问新数据:

$db_data->row->new_data['key']

这是好事还是坏事?

如果它通常被认为是不良做法,那么改变数据库对象的正确方法是什么?


编辑:

根据评论,我想澄清一下这个问题:

我不想更改数据库中的数据。我在这里做的是在我的php应用程序(Laravel 4顺便说一句)中向数据库类返回的对象添加数据。

所以我的问题是 将对象与数组一起投放 ,如果它是 好的或坏的做法

3 个答案:

答案 0 :(得分:3)

作为个人意见,我不明白为什么这会是一种不好的做法 在我看来,你做的很自然,取决于你的程序,
它并没有真正造成混乱。

您应该注意的一点是,您可以执行$var["key a"]但不能$obj->key a

答案 1 :(得分:2)

对我来说,这听起来像是将数据存储在写入数据库表中字段的php序列化对象中。

如果是这样,这使得几乎不可能在不获取记录并首先对其进行反序列化的情况下访问该数据中的值。有点不利于使用关系数据库。

答案 2 :(得分:1)

从我这边看到的 你正在做什么没有错 我不认为这是一种不好的做法

我只是想如果你知道你在做什么,你会得到你想要的结果 从不关心你是怎么做的, just do it ... ^ _ ^