Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将对象转换为PHP中的子类

将对象转换为PHP中的子类
EN

Stack Overflow用户
提问于 2015-03-19 03:23:04
回答 1查看 1.2K关注 0票数 0

我试图扩展SimpleXMLElement类,以提供一种机制,将子XML或其他SimpleXMLElement,合并到我的SimpleXMLElement,代码中,这是基于code written by Carlos C Soto in an answer到问题https://stackoverflow.com/q/4778865/367456的。

现在,我只在子类中添加一个SimpleXMLElement函数(应该通过返回新创建的元素来模拟在addChild中构建的函数),但我猜每个函数调用都将返回一个addXml,而不是我新创建的子类。在PHP中有一种方法可以与Java相媲美吗?

编辑,因为有人认为没有任何理由会否决:我不是,通常我也不会介意,即使是这样的问题,但SimpleXMLElement是一个PHP类,所以我不能轻松地包装它而不编写大量的代码。也许是某种反射魔法让这一切成为可能?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-19 17:24:53

当您从SimpleXMLElement扩展时,父方法将为您提供新类型:

代码语言:javascript
运行
AI代码解释
复制
class MyXml extends SimpleXMLElement
{
}

$xml = new MyXml('<root />');

$child = $xml->addChild('child');

var_dump(get_class($child)); # string(5) "MyXml"

这是特定于SimpleXMLElement的,而不是一般的PHP。所以你总是得试试。这就是那个评论你问题的人想告诉你的。

接下来, function有第二个参数,您可以为它命名类名。您也可以为它传递一个SimpleXMLElement对象,然后PHP将从实例中获取类名。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29143280

复制
相关文章

相似问题

添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档