2016-12-29 19 views
2
で入力文字列で不完全なマルチバイト文字を検出

Excel_reader.php:お知らせ:iconvが():Excel_reader.php

function _encodeUTF16($string) { 
$result = $string; 
    if ($this->_defaultEncoding){ 
     switch ($this->_encoderFunction){ 
      case 'iconv' : $result = iconv('UTF-16LE', $this->_defaultEncoding, $string); 
          break; 
      case 'mb_convert_encoding' :  $result = mb_convert_encoding($string, $this->_defaultEncoding, 'UTF-16LE'); 
          break; 
     } 
    } 
return $result; 

この行に示す予告:

'iconv' : $result = iconv('UTF-16LE', $this->_defaultEncoding, $string); 

私はこの行を置き換えますこれもまた

iconv('UTF-8', "ISO-8859-1//IGNORE", $string); 

通知は削除されましたが、私のExcelシートはインポートされませんでした。

私のExcelシートは現在インポートされていませんが、いつか前までうまく機能していました。 & localhostでは動作しますが、サーバでは動作しません。どのように私のExcelシートを再度インポートできますか?

+0

「インポートされていません」とはどういう意味ですか?エラーがありますか? Excelファイルはどのようにサーバーに送られますか?アップロード?アップロードされたExcelファイルがまだ有効かどうか、つまりExcelでも開くことができるかどうかを確認しましたか? – Quagaar

+0

私のExcelファイルはデータベースにインポートされました..それも正常に動作していましたが、今この通知を表示しています。 – Pooojaaaa

+0

あなたは 'iconv'行を変更した後に通知が消えてしまったが、 。だから、私の質問は、「輸入されていない」とは、通知がなくなった後のことです。また、あなたは私のコメントに書いたすべての質問に答えなかった。 – Quagaar

答えて

0

私は単にこれにそれを変更:

case 'iconv' : $result = iconv('UTF-8', $this->_defaultEncoding, $string); 

、それが動作します。

関連する問題