gpt4 book ai didi

php - 如何使用 php 类函数将对象数据存储在 mysql 数据库中?

转载 作者:可可西里 更新时间:2023-11-01 07:11:44 25 4
gpt4 key购买 nike

我在数据库中创建了一个名为“member”的表,其字段为“name”、“college”、“email”、“zid”,现在我创建了一个类(在 php 中),如

class member
{
private $name,$college,$email,$zid;
private function adduser
{
//function definition
}
public function autherise($id)
{
//function definition
}
}

现在在索引页面,我将这些值作为用户使用 html 表单(由 JS 验证)的输入,现在在表单的操作页面,我想将对象创建为 obj=new member();然后将类函数调用为 obj->autherise($_post['zid']);我想要像 autherise 这样的 autherise 和 adduser 函数的定义检查 zid 的唯一性以及使用剩余的 post 变量调用 adduser 并将它们存储到对象,然后在一个查询中将整个对象添加到数据库。

我不想插入 member(name,email,college,zid) values('$name,$email,$college,$zid')我想直接把obj输入到db

你可以修改函数中的任何内容

提前致谢!!!

最佳答案

将整个对象存储在某处(如数据库)的“简单”解决方案是对其进行序列化——即将其转换为字符串;然后,将该字符串存储在数据库中的单个字段中。

这可以在 PHP 中使用 serialize 来完成函数 – 并将字符串反序列化为对象,您将使用 unserialize功能。


另一种解决方案是将您的对象序列化为 JSON format – 好处是 JSON 可以直接从 Javascript 和许多不同的编程语言中使用,使用正确的库。

对于 JSON,请参阅 json_encodejson_decode


作为旁注:请注意,如果您将数据存储为序列化字符串,那么在 SQL 中操作它们将困难得多:例如,您将无法使用简单的 SQL 查询来更新它们;搜索也很困难。

这意味着您将始终需要从数据库中获取数据,使用 PHP 对其进行操作,然后将它们发送回数据库——这可能并不总是一个好主意,具体取决于您的需要。

关于php - 如何使用 php 类函数将对象数据存储在 mysql 数据库中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2272589/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com