アップロードされたテキスト ファイルから最初の 1,000 文字を取得しようとしています。私がやっている:
if($file->simpletype=="document"){
//get first 1000 chars in here
$snippet = file_get_contents($_FILES['upload']['tmp_name'], false, null, -1, 1000);
file_put_contents('/var/www/my_logs/log.log', $snippet);
$file->snippet = $snippet;
}
これは .txt ファイルに対しては正常に機能し、gedit で log.log ファイルを開いて読み取ることができます。ただし、.doc、.docx、.odt、および.pdfファイルの場合は、file_get_contents()
次のような意味不明なものを返します。PK\00\00\00\
stackoverflow で見つけた別の解決策を試しました。
function file_get_contents_utf8() {
$content = file_get_contents($_FILES['upload']['tmp_name'], false, null, -1, 1000);
return mb_convert_encoding($content, 'UTF-8',
mb_detect_encoding($content, 'UTF-8, ISO-8859-1', true));
}
しかし、私は同じ結果を得ます。何か案は?ありがとう!