在PHP中使用带连字符的XML节点名称

我想从XML中提取一些数据,但是当我执行以下时,我得到一个

警告:为foreach()提供的无效参数…

代码示例:

foreach ($xml->custom-field-value as $milestone) { ... } 

它适用于单个单词的节点名称,所以我猜测它不喜欢连字符。 我是否需要逃避他们,如果是这样的话?

从PHP 手册 :

访问XML文档中包含PHP命名约定不允许的字符的元素(例如连字符)可以通过在大括号和撇号中封装元素名称来完成。

在你的情况下你做:

 $xml->{'custom-field-value'}