PHP:将属性添加到不带引号的对象

PHP:将属性添加到不带引号的对象,php,simplexml,Php,Simplexml,我试图用SimpleXML解析一个对象,方法如下: foreach ($segment->attributes() as $name => $value) { $this->{$name} = $value->__toString(); } 我得到的结果是: ...\Segment {#2203 +"id": "207" +"sequence": "1" +"D

我试图用SimpleXML解析一个对象,方法如下:

foreach ($segment->attributes() as $name => $value) {
    $this->{$name} = $value->__toString();
}
我得到的结果是:

...\Segment {#2203
  +"id": "207"
  +"sequence": "1"
  +"DayOfWeekInd": "2"
  +"CodeShare": "false"
  ...
}
我的问题是在属性名称上添加了双引号

我想换成这个:

...\Segment {#2203
  +id: "207"
  +sequence: "1"
  +DayOfWeekInd: "2"
  +CodeShare: "false"
  ...
}
有什么解决办法吗

非常感谢

编辑:
我真的很困惑,因为当我做一些测试时,它工作得很好(),问题只发生在我正在处理的应用程序之外的上下文中。(Laravel应用程序)问题可能与XML源有关。我会努力清理它来解决这个问题。无论如何,谢谢你;)

引号可能是用XML编码的,PHP没有理由只添加它们。您可以使用
str\u replace()
trim()
来清除它们。感谢您抽出时间!我已经试过这样的方法:
$this->{trim($name,“\””)}=$value->\uuu-toString();
不起作用……效果很好:我会运行
var\u-dump($name)
——它可能不包含您认为它的功能。
print\r($this)
在循环之后。引号可能只是显示它们是字符串。您好,请您将您的问题显示为-包括一个小XML示例、一些代码解析以及测试结果的方式。不清楚您显示的输出是什么函数,以及引号是否真的是obj的一部分ect,或者只是函数显示所有属性名称的方式。