laravel中怎么输出xml数据

laravel中怎么输出xml数据,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

创新互联致力于互联网网站建设与网站营销,提供成都网站设计、成都网站制作、网站开发、seo优化、网站排名、互联网营销、小程序开发、公众号商城、等建站开发,创新互联网站建设策划专家,为不同类型的客户提供良好的互联网应用定制解决方案,帮助客户在新的全球化互联网环境中保持优势。

laravel框架怎么返回xml格式数据?

如果用header(“Content-type: text/xml”);

这样的话是没有效果的,会提示这样的错误:

This page contains the following errors:

error on line 14 at column 6: XML declaration allowed only at the start of the document

Below is a rendering of the page up to the first error.

laravel框架在输出xml的时候会自行用text/html方式返回数据,解决办法:

需要return response($xml,200)->header(“Content-type”,“text/xml”);这样的方式才能改变header头

laravel返回xml数据格式例子:

/**
  * 神马搜索数据结构化,written:yangxingyi Data:2018-10-25 11:15
  */
 public function index(Request $request){
        $data_array = array(
            array(
                'title' => 'title1',
                'content' => 'content1',
                'pubdate' => '2009-10-11',
            ),
            array(
                'title' => 'title2',
                'content' => 'content2',
                'pubdate' => '2009-11-11',
            )
        );
        $title_size = 1;
        $xml = "\n";
        $xml .= "
\n";         foreach ($data_array as $data) {             $xml .= $this->create_item($data['title'], $title_size, $data['content'], $data['pubdate']);         }         $xml .= "
\n";         #echo $xml;         return response($xml,200)->header("Content-type","text/xml");     }  /**   * 神马搜索数据结构化,节点的具体内容 written:yangxingyi   */     private function create_item($title_data, $title_size, $content_data, $pubdate_data)     {         $item = "\n";         $item .= "" . $title_data . "\n";         $item .= "" . $content_data . "\n";         $item .= " " . $pubdate_data . "\n";         $item .= "\n";         return $item;     }

PHP生成xml格式的数据直接加上 header(“Content-type: text/xml”);头就行了

 'title1',
    'content' => 'content1',
        'pubdate' => '2009-10-11',
    ),
    array(
    'title' => 'title2',
    'content' => 'content2',
    'pubdate' => '2009-11-11',
    )
);
$title_size = 1;
$xml = "\n";
$xml .= "
\n"; foreach ($data_array as $data) { $xml .= create_item($data['title'], $title_size, $data['content'], $data['pubdate']); } $xml .= "
\n"; echo $xml; //创建XML单项 function create_item($title_data, $title_size, $content_data, $pubdate_data) {     $item = "\n";     $item .= "" . $title_data . "\n";     $item .= "" . $content_data . "\n";     $item .= " " . $pubdate_data . "\n";     $item .= "\n";     return $item; } ?>

看完上述内容,你们掌握laravel中怎么输出xml数据的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


分享文章:laravel中怎么输出xml数据
链接地址:http://pwwzsj.com/article/iioocp.html