1
私はxlsxファイルからdbにデータをインポートする小さなスクリプトを作成しています。私はPHPExcelライブラリを使用してデータを読み込んでいます。問題は、文字を同等のHTMLタグに変換する方法がないように見えることです。この背後にある理由は、保存されたデータをhtmlタグのあるページにプルすることです。だから私がこれを解決するために考えている一つの方法は、読者が各セルから取ったテキストを解析し、各文字をそのHTMLタグに相当するものに変換することです。ここでのxlsxセルからのテキストのサンプルです:ファイルの書式設定文字を検出するにはどうすればよいですか?
- 不安
- 恐慌
- スリープ いびき
- 肥満
- を擾乱:頻繁に頭痛のリスクを高める要因に貢献
- カフェインの過剰使用
- 過度の鎮痛薬の使用
- 頭の上に頻繁に歪みや首
- 目の問題
- 私が変換したい禁止薬
の
EDIT:ここコードです:文字列は引用符を取り除くしたい場合があります二重引用符である場合
$value = $cell->getValue();
$value = htmlentities($value);
$value = nl2br($value);
:
<?php
include 'PHPExcel.php';
$objReader = PHPExcel_IOFactory::createReader('Excel2007');
//$objReader->setReadDataOnly(true);
$objPHPExcel = $objReader->load("test.xlsx");
$objWorksheet = $objPHPExcel->getActiveSheet();
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<?php
echo '<table>' . "\n";
foreach ($objWorksheet->getRowIterator() as $row) {
echo '<tr>' . "\n";
$cellIterator = $row->getCellIterator();
$cellIterator->setIterateOnlyExistingCells(false); // This loops all cells,
// even if it is not set.
// By default, only cells
// that are set will be
// iterated.
foreach ($cellIterator as $cell) {
echo '<td>' . $cell->getValue() . '</td>' . "\n";
}
echo '</tr>' . "\n";
}
echo '</table>' . "\n";
?>
</body>
</html>
そのセルのgetValue()の結果はどうですか...つまり、実際のテキストコンテンツは何ですか? –
@マーク・ベイカー:これは、書式設定が全く行われていない単純なテキストです。それがフォーマットされていれば、確かにHTMLではありません。テキストは一緒に窮屈です。スペースなし、改行なし、円形の弾丸がレンダリングされます。 – jilseego
私はアイデアを持っていない、私は見てみましょう...それは間違いなくリッチテキストオブジェクトをdnot返されるテキストですか? –