PHP:simplexlsx Parser specialchars

时间:2014-04-04 08:46:38

标签: php parsing utf-8 xlsx htmlspecialchars

希望有人可以帮助我。

我使用simplexlsx (http://www.phpclasses.org/package/6279-PHP-Parse-and-retrieve-data-from-Excel-XLS-files.html)读出我的Excel文件并将其显示/写入我的数据库。

现在我遇到的问题是该课程不会解析像“Ä,Ü,Ö,ß......”这样的特殊问题。 我试着写一个函数来修复它,但它不会工作。

希望你们中的一些人可以帮助我。

到目前为止 XQP

//尝试

function unhtmlspecialchars( $string ){    
  $string = str_replace ( '&', '&', $string );    
  $string = str_replace ( ''', '\'', $string );    
  $string = str_replace ( '"', '"', $string );    
  $string = str_replace ( '&lt;', '<', $string );    
  $string = str_replace ( '&gt;', '>', $string );    
  $string = str_replace ( '&uuml;', 'ü', $string );    
  $string = str_replace ( '&Uuml;', 'Ü', $string );    
  $string = str_replace ( '&auml;', 'ä', $string );    
  $string = str_replace ( '&Auml;', 'Ä', $string );    
  $string = str_replace ( '&ouml;', 'ö', $string );    
  $string = str_replace ( '&Ouml;', 'Ö', $string );  
  return $string;
}

尝试在返回$ value

之前调用simplexlsx.class中的函数

//编辑2 我的尝试是将函数unhtmlspecialchars添加到simplexlsx.class并在返回值之前在“function value()”的末尾调用它 像这样只是为了测试它......

  $value2 = $this->unhtmlspecialchars($value);

        return $value2 ;

1 个答案:

答案 0 :(得分:0)

解决方案(如评论中的OP所述)是使用

utf8_decode($value);

恢复输出中的特殊字符。