题
当我运行此代码,通过级联环关于中途,$ XML成为空和整个级联循环的其余部分保持为空。有没有人知道为什么发生这种情况?
$xml = '';
foreach($this->currentColumns['unknown'] as $column => $value)
{
$xml .= "<columnName>";
$xml .= $column;
$xml .= "</columnName>\r\n";
}
return $xml;
解决方案
在这里是$这个 - > currentColumns是某种形式的XML解析(用SimpleXML例如)的结果,很可能是这个数组的元素是不是真的字符串,但的XMLElement对象,或者说足够接近。
尝试铸造你的变量,所以你确定你catenating字符串,而不是对象:
$xml = '';
foreach($this->currentColumns['unknown'] as $column => $value)
{
$xml .= "<columnName>";
$xml .= (string)$column; // <--- here is the trick
$xml .= "</columnName>\r\n";
}
return $xml;
其他提示
你将不得不为你去打印出$列值。如果你得到一个很意外的列名,则可能必须为它创造XML字符串之前,以测试该条件。
不隶属于 StackOverflow