0

関数を使用して XML からテーブルを作成しています(つまり、外部ソースからのものです。入力 xml を変更することはできません)SimpleXMLElement()。テーブルをうまく作成しますが、$dataいくつかの行の入力xmlをよく見ると、いくつかの数字がスキップされます(例: _x0034_行1)colspan 。列をスキップするたびに適切な場所を追加する必要があります。 2つなど

例: col4 をスキップする場合colspan="2"、col3に追加する必要があります

<?php $data= "<tableDOC>
<Table8>
    <_x0031_>9</_x0031_>
    <_x0032_>101970</_x0032_>
    <_x0033_>100000</_x0033_>
    <_x0035_>36000</_x0035_>
    <_x0036_>0</_x0036_>
    <_x0037_>0</_x0037_>
    <_x0038_>0</_x0038_>
  </Table8>
  <Table8>
    <_x0031_>10</_x0031_>
    <_x0033_>100000</_x0033_>
    <_x0034_>22500</_x0034_>
    <_x0035_>40000</_x0035_>
    <_x0036_>100000</_x0036_>
    <_x0037_>22500</_x0037_>
    <_x0038_>40000</_x0038_>
  </Table8>
 <Table8>
    <_x0031_>10</_x0031_>
    <_x0032_>113300</_x0032_>
    <_x0033_>100000</_x0033_>
    <_x0034_>22500</_x0034_>
    <_x0035_>40000</_x0035_>
    <_x0038_>40000</_x0038_>
  </Table8>
</tableDOC>";

$books = new SimpleXMLElement($data);

echo <<<EOF
<table border="1" width="100%" cellpading="0" cellspacing="0">
EOF;
foreach($books as $Table8) 
{

echo "<tr>";
       echo "<td>".$Table8->_x0031_."</td>"; 
       echo "<td>".$Table8->_x0032_."</td>";
       echo "<td>".$Table8->_x0033_."</td>";
       echo "<td>".$Table8->_x0034_."</td>";
       echo "<td>".$Table8->_x0035_."</td>"; 
       echo "<td>".$Table8->_x0036_."</td>"; 
       echo "<td>".$Table8->_x0037_."</td>"; 
       echo "<td>".$Table8->_x0038_."</td>"; 
echo "</tr>";
 }
echo '</table>'; ?>

作業サンプルはこちらhttp://codepad.org/bsb8x19m

上記の例では、次のようなテーブルが生成されますhttp://jsfiddle.net/MwyZT/

しかし、私の期待される結果は次のようになる必要があります(適切な幅のコルスパン) http://jsfiddle.net/MUX54/

4

1 に答える 1