我正在尝试读取.csv文件并在之后使用其数据,但是当我使用我从此文件中获取的文本时,它会出现一些“黑色diamonts中的问号”,其中假设有一些特殊的字符,如“á”,“ú”。
我认为.csv文件中的文本可能是不同的编码,但是我做了一个mb_detect_encoding,它显示它是UTF-8
这是我现在使用的代码:
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<?php
$row = 1;
$handle = fopen ("Exportar.csv","r");
$url = array();
$text1 = array();
$text2 = array();
$title = array();
$subtitle = array();
$description = array();
$image = array();
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count ($data);
if ($row > 1) {
$url[$row -2 ] = $data[2];
echo $text1[$row -2] = $data[6];
//echo $encode = mb_detect_encoding($text1[$row -2]);
$text2[$row -2] = $data[7];
$title[$row -2] = $data[8];
$subtitle[$row -2] = $data[9];
$description[$row -2] = $data[10];
$image[$row -2] = $data[11];
}
$row++;
}
fclose ($handle);
// Rest of the code....
?>
这是输出:
Vimos quevoc nrealorealizou nenhum pedido em nosso sitenos ltimos90dias。 Para oseupr ximopedido,ganhe 15%de desconto em todo o site!
答案 0 :(得分:0)
HTML无法自行读取特殊字符。您需要将它们转换为HTML实体,例如á
。查看htmlentities函数。
这样的事情:
<?php
$str = 'é, í, ó, ú, ü, ñ';
echo htmlentities($str, ENT_IGNORE , "ISO-8859-1");
?>