语境
我有要插入 MySQL 数据库的对象,并且因为我不想使用带有 PDO 的纯代码来完成所有 DB 管理,所以我决定尝试 RedBean PHP ORM。
以下是我的两个对象:
class Profile {
public $Name;
public $Description;
public $Disabled;
public $ListOfProfileTranslation;
}
class ProfileTranslation {
public $LanguageCode;
public $Title;
public $Description;
}
上面的 2 个对象以某种方式“链接”,因为 Profile 的 ListOfProfileTranslation 包含一个“ProfileTranslation”数组
执行和 RedBean PHP
我知道 RedBean PHP 可以帮助简化数据库上的 CRUD 操作;我也看过像RedBeanPHP这样的例子来独立声明表和每一列,但我想 RedBean PHP 可能会向我展示一些额外的魔法,如果我将它传递给它一个对象,它可以自己处理它(因为表名、列名和值所以我猜测 RedBean PHP 可以以某种方式自行处理它,但我可能弄错了)。
这样我就可以写出类似的东西:
$Profile = R::dispense('Profile');
$Profile = $itemObject; // where $itemObject is a "Profile" object
//which already exists in memory
R::store($Profile);
我知道上面会引发异常并且不会执行,但是在简化数据库管理方面有什么方法可以做到这一点吗?
或者
我是否必须完成所有步骤,例如:
$Profile = R::dispense('Profile');
$Profile->Name = $itemObject->Name;
$Profile->Description = $itemObject->Description;
$Profile->Disabled = $itemObject->Disabled;
R::store($Profile);
根据您的说法,实现这两个对象并将它们在 DB 中与 RedBean PHP 链接的最佳解决方案是什么?