Php 图像上载API XML(仅允许在文档开头声明)

Php 图像上载API XML(仅允许在文档开头声明),php,xml,image,upload,Php,Xml,Image,Upload,我的问题是一个PHP&XML问题,我和一个朋友一起开发了一个图像上传api,我们在创建XML字符串时遇到了一个问题 image.php: $simage = new SimpleImage(); $xml = new SimpleXMLElement('<bb-upload></bb-upload>'); if($key == get_key()){ require 'upload.php'; } else{

我的问题是一个PHP&XML问题,我和一个朋友一起开发了一个图像上传api,我们在创建XML字符串时遇到了一个问题

image.php:

$simage = new SimpleImage();
    $xml = new SimpleXMLElement('<bb-upload></bb-upload>');
    if($key == get_key()){
        require 'upload.php';
    }
    else{
        $xml->addChild('error', "102 Fehlerhafter Zugriffs Key");
    }
    header("Content-type:text/xml;charset=utf-8");
    echo $xml->asXML();
问题是,如果我们在XML上进行连接,一切正常,但是如果我们上传一个图像,我们会变成
错误:第6列第1行的错误:仅在文档开头允许XML声明

输出如下:

?<?xml version="1.0"?>
<bb-upload><error>0</error><src>http://*****.de/bb-image/data/1355858033-712.jpg</src>     </bb-upload>
?
0http://*****.de/bb image/data/1355858033-712.jpg

为什么是一个?在代码中

很可能在XML文档开头之前有一些字符

这通常是导致错误的原因


在十六进制查看器中打开脚本,这通常会在编辑器中显示不可见字符。删除这些,例如,保存不带BOM的PHP文件(无论如何,您都应该这样做)。

在打开
之前,您是否有任何输出,谢谢您的帮助。我在upload.php的十六进制代码中找到了它:pMaybe你想把这个问题标记为“已回答”吗?我怎么做?我是Stackoverflow的新手。我只能共享|编辑|删除或标记,但我需要关闭按钮=(我留下了一个答案,你可以接受。如果你不喜欢,我建议你自己写一个答案(也接受)@Charles:你可能也想从你的评论中创建一个答案。--最后请将这个问题标记为已回答,这样它就会从未回答的列表中消失。谢谢!
?<?xml version="1.0"?>
<bb-upload><error>0</error><src>http://*****.de/bb-image/data/1355858033-712.jpg</src>     </bb-upload>