0
if(!empty($_FILES['csv'])){
        $this->autoRender = false;
        $text = file_get_contents($_FILES['csv']['tmp_name']);
        header('Content-type: application/CSV');
        header('Content-Disposition: attachment;filename=' . $_FILES['csv']['name']);
        echo $text;
        return;
}

上記のように、ファイルをアップロードしてからもう一度吐き出すのに問題はありません...しかし、アクセント文字や全角ダッシュなどの特殊文字を同等またはHTMLバージョンに変換する必要があります。どうすればそれを行うことができますか?

Windows 7、Apache 2.2.21、PHP 5.4.3、CakePHP 1.3

4

2 に答える 2

1

関数を見てくださいhtmlentities()

私が知っていることから、echo出力を次のように変更するだけかもしれません

echo htmlentities($text);

manualで利用可能なフラグを確認することを忘れないでください。必要に応じて微調整が可能です。

于 2013-07-01T19:58:08.083 に答える
0

PHPのhtmlentities関数を使用できます:

$text = htmlentities(file_get_contents($_FILES['csv']['tmp_name']));

これを逆にするには、必要に応じて を使用しますhtml_entity_decode

于 2013-07-01T20:05:06.207 に答える