我在偏移量方面遇到了问题,因为当我的xml文件中没有标题时,我的标题不是<cd title="No Title">
,而是<cd>
。
当没有title属性时,我想将字符串"no title"添加到我的cd
对象的title
成员中。
请查看以下代码:
//SEEMS TO WORK
foreach ($Steps as $step){
$cd->SetCD($cdkey->nodeValue);
$titleQuery = './@title';
$nullTitle = "No Title Listed";
$areTitles = $xpath->query($titleQuery, $step);
//DOES NOT WORK
if (!$areTitles)
{
$entry->SetTitles($title->$nullTitle)
}
//END DOES NOT WORK
//WORKS
else{
$entry->SetTitles($title->$titleQuery)
}
}
如何更改//DOES NOT WORK
和//END DOES NOT WORK
之间的行,或代码的其余部分,以便获得所需的结果:
[title:Entry:private] => Array
(
[0] => no title
[1] => no title
[2] => Bounce
[3] => Bound
[4] => Bounty
)
而不是:
[title:Entry:private] => Array
(
[0] => Bounce
[1] => Bound
[2] => Bounty
)
谢谢。
DOMXPath::query()
返回一个DOMNodeList
,因此您的语句
if (!$areTitles)
永远不会评估为真。
相反,尝试
if (0 == $areTitles->length)