91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

laravel框架和php怎么返回xml格式數據?

發布時間:2020-05-22 14:35:56 來源:億速云 閱讀:282 作者:鴿子 欄目:編程語言

背景:

seo的同事要批量提交xml格式的數據到搜索引擎,目前項目用laravel框架開發的,所以就有了這篇文章的誕生了。網上有不少關于php輸出xml格式的例子,小弟不才也搬過,只是在php文件上面測試是沒問題的,把它搬到laravel框架里面,就有有坑了,主要原因是header頭的問題。

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 = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n";
        $xml .= "<article>\n";
        foreach ($data_array as $data) {
            $xml .= $this->create_item($data['title'], $title_size, $data['content'], $data['pubdate']);
        }
        $xml .= "</article>\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 = "<item>\n";
        $item .= "<title size=\"" . $title_size . "\">" . $title_data . "</title>\n";
        $item .= "<content>" . $content_data . "</content>\n";
        $item .= " <pubdate>" . $pubdate_data . "</pubdate>\n";
        $item .= "</item>\n";
        return $item;
    }

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

<?php
 header("Content-type: text/xml");
$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 = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n";
$xml .= "<article>\n";
foreach ($data_array as $data) {
$xml .= create_item($data['title'], $title_size, $data['content'], $data['pubdate']);
}
$xml .= "</article>\n";
echo $xml;
//創建XML單項
function create_item($title_data, $title_size, $content_data, $pubdate_data)
{
    $item = "<item>\n";
    $item .= "<title size=\"" . $title_size . "\">" . $title_data . "</title>\n";
    $item .= "<content>" . $content_data . "</content>\n";
    $item .= " <pubdate>" . $pubdate_data . "</pubdate>\n";
    $item .= "</item>\n";
    return $item;
}
?>

以上就是laravel輸出xml數據,php輸出xml格式數據的詳細內容,更多請關注億速云其它相關文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

香港| 罗江县| 巩义市| 长治市| 荆门市| 永城市| 深圳市| 石城县| 崇礼县| 榆林市| 宜州市| 湘阴县| 且末县| 汶上县| 修文县| 玉龙| 彝良县| 安丘市| 板桥市| 淳化县| 汉源县| 宝应县| 仲巴县| 万州区| 常宁市| 苏尼特左旗| 陕西省| 西丰县| 丹巴县| 松潘县| 灵川县| 平度市| 兴和县| 永登县| 华宁县| 曲阜市| 义乌市| 稷山县| 菏泽市| 榆中县| 松原市|