为什么我在xml文件中的文档末尾收到错误额外内容?

时间:2014-02-24 08:00:39

标签: xml codeigniter

好的,所以我正在尝试编写我的第一个XML文档。我收到的错误是“第7行第10行的错误:文档末尾的额外内容”......我不知道这意味着什么。我在CodeIgniter / PHP中这样做。

function conversation($member_id){

        if($this->user['id'] != 0){

            $str = '
                <messages>
                ';

            $message_results = $this->message->result_array($member_id);
            foreach($message_results as $message){

                $str .= '
                    <message id=\''.$message['id'].'\'>

                         <author>';

                foreach($message['author'] as $key => $val){

                    $str .= '<'.$key.'>'.$val.'</'.$key.'>';

                }

                $str .= '
                        </author>
                        <recipient>
                        ';

                foreach($message['recipient'] as $key => $val){

                    $str .= '<'.$key.'>'.$val.'</'.$key.'>';

                }

                $str .= '</recipient>
                        <content>'.$message['content'].'</content>
                        <datesent>'.$message['date_sent'].'</datesent>
                        <status>'.$message['status'].'</status>
                    </message>';

            }

            $str .= '
                </messages>
                ';

            $this->output->set_content_type('text/xml');
            $this->output->set_output($str);

        }

    }

2 个答案:

答案 0 :(得分:0)

我刚刚想出答案......这是因为我的$ message ['author']数组中的某些值是空白的!例如,导致<id></id>

答案 1 :(得分:0)

我认为你当前的方法(使用字符串)会导致错误。我建议使用DOMDocument来创建XML。 Here documentation