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);

不要忘记查看手册中的可用标志,它允许根据您的需要进行一些微调。

于 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 回答