0

最終的には、テキストをテキストエリアに貼り付けて、html テーブルにフォーマットしたいと考えています。テキストエリアへのデータ入力は、複数の行と列のデータになります。

あまり問題なく個々の行を取得できましたが、適切にテーブルに入れるには、行と列を取得できる必要があります。

私が抱えている問題の 1 つは、列が必ずしも同じ文字で分割されているとは限らないことです。入力では、各列の間に複数のスペースが含まれる傾向があります (おそらく 1 に切り詰められる可能性があります)。

これは、個々の行を吐き出すコードの例です。

if (isset($_POST['Submit1'])) {

$test = isset($_POST['test'])?$_POST['test']:"";
$testlines = explode("\n", str_replace("\r", "", $test));
foreach($testlines as $lines) {

echo $lines . "</br>";

}
}

提案に基づいて、preg_split を使用してみましたが、テーブルが出力されるようになりました。

if (isset($_POST['Submit1'])) {

$test = isset($_POST['test'])?$_POST['test']:"";
$testlines = explode("\n", str_replace("\r", "", $test));

echo "<table>";
foreach($testlines as $lines) {
echo "<tr>";
$cols = preg_split('/\s+|,/',$lines);

foreach($cols as $field){
echo "<td>" . $field . "</td>";
}
echo "</tr>";
}
echo "</table>";


}
4

1 に答える 1