我在转换utf-8时遇到了麻烦。我正在从文件中读取以保持数组

时间:2015-10-09 12:03:16

标签: php arrays encoding

我正在尝试逐行读取文件并将它们保存在数组中。但我在该文件中有土耳其语字符,我尝试了一切来解决这个问题,但没有结果。

该文件包含以下内容:

  • Aksesuar ve Sarf / Pil /TaşınabilirŞarjCihazı(PowerBank)
  • Aksesuar ve Sarf / Pil /Çinko
  • Aksesuar ve Sarf / Profesyonel Kaset /

您可以看到Şı字符。我在数组中看到它们为?。我该怎么办?

这是我的代码:

 public function getCategoriesByFile($fileUrl){
            $file = fopen($fileUrl,"r");
            $lines = array();
            $last = array();
            while(! feof($file))
              {
               $line= fgets($file);
              $line = $line; 
               array_push($lines , $line);
              }

            fclose($file);

            foreach($lines as $line){
                $parsedLines[] = preg_replace("/\s+/"," ",preg_split('/;/', trim($line)));
            }
            foreach($parsedLines as $parsed){
                $parse1 = rtrim($parsed[0] , " / ");
                $parse2 = rtrim($parsed[1] , " / ");
                array_push($last,array($parse1,$parse2));
            }
            return $last;
        }

输出如:

  }
  [2] => array(2) {
    [0] => string(64) "Aksesuar ve Sarf / Pil / Taşınabilir Åarj Cihazı (PowerBank)"
    [1] => string(0) ""
  }
  [3] => array(2) {
    [0] => string(31) "Aksesuar ve Sarf / Pil / Çinko"
    [1] => string(0) ""

需要你帮助的人。谢谢。

1 个答案:

答案 0 :(得分:-1)

尝试$line = iconv('UTF-8', 'ASCII//TRANSLIT//IGNORE', $line);