0

変数に応じてさまざまなファイル タイプを作成する関数があり、XML を生成していますが、そのページへのリンクをクリックしても ( <a href="/asset/1/xml">XML</a>)、何も起こりません。クリックして新しいタブで開くか、タイトルバーに手動で URL を入力すると、必要に応じてファイルがダウンロードされます。

function asset($asset_id, $display = ''){

    $this->load->model('model_asset');

    $asset = $this->model_asset->get_by_id($asset_id, true);

    switch($display) {
    case 'xml':
        $this->load->helper('array_to_xml_helper');

        $asset_arr = get_object_vars($asset);

        $filename = $asset->title .'-'. $asset->subtitle . '.xml';
        $xml = Array2XML::createXML('asset', $asset_arr);
        header ("Content-Type:text/xml");
        header('Content-Disposition: attachment; filename="'. $filename .'"');
        echo $xml->saveXML();
        break;
    }
}

動的に生成されたファイルでこれを機能させるにはどうすればよいですか (ここで見つけた arraytoxml ユーティリティ関数を使用しています)

4

1 に答える 1

0

添付ファイルにファイルを設定してみることができますこれをヘッダーに追加します:

  • Content-disposition: 添付ファイル
  • ファイル名=huge_document.pdf
于 2012-08-13T09:03:38.580 に答える