【问题标题】:PHP fwrite to csv file utf-8 not working [duplicate]PHP fwrite到csv文件utf-8不起作用[重复]
【发布时间】:2018-03-28 12:16:31
【问题描述】:

你能帮我用php fwrite吗? CSV 显示错误字符

类似:

općšpšćšćšp ćpšćpšćp šćpšćpšć

这是用于输入的 php 代码:

我找不到为这个 php 修复 UTF-8 的选项:

<?php
if (isset($_POST['myname'])){
$name = $_POST['myname'];
$handle = fopen('names.csv', 'a');
fwrite($handle, $name."\n");
fclose($handle); }

?>

HTML:

    <form method="post" action="demo.php">

   Myname: <input type="text" name="myname" /> 

   <input type="submit" name="submit" value="submit data" />
   </form>

有人帮忙吗?

【问题讨论】:

    标签: php html input fwrite


    【解决方案1】:

    如果是 UFT-8 解码问题,您可以点击 cmets 部分中的链接。 就我而言,我在 laravel 框架中生成 .cvs 文件,我遇到了这个问题。 我刚刚在fwrite之前添加了以下代码,我的问题就解决了。

    您可以尝试以下操作:

    ob_end_clean();
    ob_start();
    fwrite($handle, $name."\n");
    fclose($handle); 
    

    根据Link“清理(擦除)输出缓冲区并关闭输出缓冲”

    【讨论】:

    • 感谢您的回答,但仍然无法正常工作:(
    【解决方案2】:

    您的编码似乎是错误的。您可以在 $name 上使用 iconvutf-encode 进行转换。

    对于损坏的 utf8 字符串,请查看 ForceUTF8

    【讨论】:

    • 这是用于 html 输入的,我正在尝试进行将所有数据保存到 .csv 的输入。我是 php 新手,我不知道在哪里放置 iconv 代码 :( 编码 utf:这是一个例子:malatvornicakreative.hr/baza/proba
    • 这不是答案,这是评论。如果您还不能发布 cmets,请先获得更多声誉。请不要绕过系统。
    • 他/她的问题是编码错误(如示例中的 清楚地 所示),而我的答案中给出的函数可以解决这个问题。添加合法问题应该不是问题!所以它确实是一个答案。我对其进行了编辑以使其清楚。如果还是不接受...谢谢不理解-.-
    猜你喜欢
    • 2019-01-30
    • 1970-01-01
    • 2016-08-15
    • 2016-02-22
    • 2017-03-19
    • 2015-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多