gpt4 book ai didi

php - 全局检查 PHP stdClass 中的有效属性?

转载 作者:行者123 更新时间:2023-12-04 14:36:44 26 4
gpt4 key购买 nike

是否可以检查 PHP stdClass 的属性?我有一些模型正在生成为 stdClass。使用它们时,我想检查我正在调用的属性是否存在于某种核心类中。我注意到 __get 被 stdClass 忽略了...

如何检查来自 stdClass 的属性是否存在于对象中?

最佳答案

StdClass 对象只包含属性,不包含代码。所以你不能从它们“内部”编写任何代码。所以你需要解决这个“缺点”。根据生成这些类的内容,这可以通过“重载”数据(例如使用 Decorator)提供您正在寻找的功能来完成:

class MyClass
{
private $subject;
public function __construct(object $stdClass)
{
$this->subject = $stdClass;
}
public function __get($name)
{
$exists = isset($this->subject->$name);
#...
}
}

$myModel = new MyClass($model);

关于php - 全局检查 PHP stdClass 中的有效属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8169211/

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