我想将对象或表单保存到数据库中。只有我找不到最简单(或正常)的方法来做到这一点。
我找到了很多教程,但似乎没有一个是简单或最新的。有人可以帮我吗?
我使用 Zend Framework 1.9.3 版。
我想将对象或表单保存到数据库中。只有我找不到最简单(或正常)的方法来做到这一点。
我找到了很多教程,但似乎没有一个是简单或最新的。有人可以帮我吗?
我使用 Zend Framework 1.9.3 版。
将行插入数据库表的最简单方法(也就是使用最少代码的方法)Zend_Db
是:
$data = array(
'created_on' => '2007-03-22',
'bug_description' => 'Something wrong',
'bug_status' => 'NEW'
);
$db->insert('bugs', $data);
bugs
上面的代码将在表中插入一个新行,而您创建$db
的Zend_Db_Adapter_Abstract
-subclass 是Zend_Db::factory()
. 请参阅Zend Framework 手册中的编写对数据库的更改以获取更多详细信息和提供的所有功能。Zend_Db
为了完整起见,上述代码将向数据库发出类似于以下内容的查询:
INSERT INTO bugs (created_on, bug_description, bug_status)
VALUES ('2007-03-22', 'Something wrong', 'NEW')
下一步将是一种更复杂的方法,使用Zend_Db_Table
.
编辑:
假设您有一个Zend_Form
( $form
) 和适当的字段created_on
,bug_description
并且bug_status
假设您有正确的过滤器和验证器,那么添加一个具有表单中给出的值的新行就像
if ($form->isValid($_POST)) {
$db->insert('bugs', $form->getValues());
}
存储自定义对象也很容易:
// $bug is your custom object representing a bug
$db->insert('bugs', array(
'created_on' => $bug->getCreatedOn(),
'bug_description' => $bug->getDescription(),
'bug_status' => $bug->getStatus()
));
实例化您需要的任何对象并对其进行序列化。序列化后,您可以将其存储或传输到几乎任何介质。这是你指的吗?