我正在函数内部构建XML页面,出于某些奇怪的原因,我没有从函数中吐出全部内容。我试过了

return $thisXml;
}
echo $thisXML;

而且我只得到函数前面的变量中的xml声明。
如果我在函数中添加回显,则应按原样返回所有内容。

我的页面基本上看起来像这样
$thisXml = 'xml declaration stuff';

function getThisXML($thisXML){
  for(i=1; i<5; i++){
  $query "has the 5 in it";

  while ($mysqlQuery =mysql_fetch_array($theQuery) {
    $thisXml.='add the xml';
  }
  $thisXml.='close the last element';
  return $thisXml;
}

echo $thisXml;

如我所说,如果我将'return'替换为'echo',则会得到所有不错的xml。如果我在函数外回显,则只会得到原始的声明。

真的很奇怪,我整天都在为此苦苦挣扎。

最佳答案

return $thisXml;
}
echo $thisXML;

$ thisXML;仅存在于功能范围内。
要么使$ thisXML;全局(坏主意)或echo getThisXML(),其中getThisXML是返回$thisXML的函数;

09-12 23:41