在PHP中创建XML输出

在PHP中创建XML输出,php,xml,Php,Xml,我正在尝试用PHP为IP电话上的远程电话簿创建一个XML文件输出,下面是我的代码: <?php $conn=mysql_connect("localhost","user","********"); mysql_select_db("db_name",$conn); header("Content-Type: text/xml"); header("Connection: close"); header("Expires: -1"); ?> <YealinkIPPhoneD

我正在尝试用PHP为IP电话上的远程电话簿创建一个XML文件输出,下面是我的代码:

<?php
$conn=mysql_connect("localhost","user","********");
mysql_select_db("db_name",$conn);

header("Content-Type: text/xml");
header("Connection: close");
header("Expires: -1");
?>

<YealinkIPPhoneDirectory>
<?php
$output='<YealinkIPPhoneDirectory>\n';
$sql="SELECT * from contacts ";
$rs=mysql_query($sql,$conn);
while($result=mysql_fetch_array($rs)) {
    $output .= "<DirectoryEntry>\n";
    $output .= "<Name>Mobile:</Name>\n";
    $output .= "<Telephone>" . $result["mobile"] . "</Telephone>\n";
    $output .= "</DirectoryEntry>\n";
}
$output='</YealinkIPPhoneDirectory>\n';

echo '$output';
?>

您需要删除此行:

echo '$output';
并将其替换为:

echo $output;
以下是一个示例:


注意单引号的值是如何逐字回显的,因此您可以逐字地将
$output
视为您的输出。

尝试
回显$output
instead此页面包含以下错误:第27列第3行的错误:下面文档末尾的额外内容是第一个错误之前的页面呈现。我在尝试echo$output时遇到该错误;你犯了什么错误?不可能是相同的…我现在得到这个:这个页面包含以下错误:第27列第1402行的错误:下面文档末尾的额外内容是第一个错误之前的页面呈现。但它显示了它应该做的所有结果。不是XML格式,虽然它只是作为一块HTML文本进行响应,但我认为您的XML是很糟糕的,因为我猜这个错误似乎出现在应用程序端。我还删除了对mysql\u fetch\u数组的引用。。。我总是忘记默认情况下会捕获这两种数组类型。另外,请尝试添加$output=“\n”;作为输出的第一行。。不要忘记将第二行的=改为。=并查看您得到了什么。尝试了所有这些-现在在第6列的第2行出现错误:只允许在文档开头使用XML声明
echo '$output';
echo $output;