dongmu5920 2013-07-18 17:41
浏览 24
已采纳

插入数组

I want to get out of every 3 cells The first cell with index 0, the second 1, the third 2 And bring it all into an array so that in the $ result [0] were all cell values ​​at index 0 - all tr lines, etc.

<?
$lines = $xpath->query("//table[@id='cab_table'] //tr");
            $result = array();

                foreach($lines as $line) {

                    for($j=0; $j<=3; $j++) {

                     $tds_{$j} = $xpath->query('//td['.$j.']', $line);
                     $tds_{$j} = $xpath->query('//td['.$j.']', $line);
                     $tds_{$j} = $xpath->query('//td['.$j.']', $line);

                     $count = $tds_{$j}->length;

                        for($i=0; $i<$count; $i++){

                            $result['number'][] = $tds_{$j}->item($i)->nodeValue;
                            $result['volume'][] = $tds_{$j}->item($i)->nodeValue;
                            $result['code'][] = $tds_{$j}->item($i)->nodeValue;

                        }

                    }

?>              }

HTML code:

        <div class="pc-data-cab_table_block_container" style="overflow:auto">
            <div id="cab_table_block" style="width:100%;overflow:auto">
                <table id="cab_table" cellpadding="0px" cellspacing="0px" style="width:100%;overflow:auto">
                    <tr id="cab_table_tr_top">
                        <th id="cab_table_left">Номер счета</th>
                        <th>Объем</th>
                        <th id="cab_table_right">РЎСѓРјРјР° РєРѕРјРјРёСЃСЃРёРё</th>
                    </tr>
                                                                                <tr class="cab_table_tr2">
                            <td class="cab_table_left1">510169</td>
                            <td style='width:130px'>0.04</td>
                            <td class="cab_table_right1">2.07</td>
                         </tr>
                                                                                    <tr class="cab_table_tr1">
                            <td class="cab_table_left1">1193683</td>
                            <td style='width:130px'>0.23</td>
                            <td class="cab_table_right1">0.00</td>
                         </tr>
                                                                                    <tr class="cab_table_tr2">
                            <td class="cab_table_left1">2159860</td>
                            <td style='width:130px'>1.06</td>
                            <td class="cab_table_right1">51.54</td>
                         </tr>
                                                                                    <tr class="cab_table_tr1">
                            <td class="cab_table_left1">8070080</td>
                            <td style='width:130px'>1.76</td>
                            <td class="cab_table_right1">147.80</td>
                         </tr>
                                                                                    <tr class="cab_table_tr2">
                            <td class="cab_table_left1">8079297</td>
                            <td style='width:130px'>19.25</td>
                            <td class="cab_table_right1">884.85</td>
                         </tr>
                                                                            </table>
            </div>
        </div>
  • 写回答

2条回答 默认 最新

  • douhuan3448 2013-07-18 18:41
    关注

    This is my solution, if you can, modify it

    foreach($lines as $num => $line) { 
    
    
                                $new1 = $xpath->query('//td[1]', $line);
                                $new2 = $xpath->query('//td[2]', $line);
                                $new3 = $xpath->query('//td[3]', $line);
    
                                foreach ($new1 as $value) {
    
                                    $result['number'][$value->nodeValue] = $value->nodeValue;
    
                                }
    
                                foreach ($new2 as $value) {
    
                                    $result['volume'][$value->nodeValue] = $value->nodeValue;
    
                                }
    
                                foreach ($new3 as $value) {
    
                                    $result['code'][$value->nodeValue] = $value->nodeValue;
    
                                }
    
    
                    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥20 iqoo11 如何下载安装工程模式
  • ¥15 本题的答案是不是有问题
  • ¥15 关于#r语言#的问题:(svydesign)为什么在一个大的数据集中抽取了一个小数据集
  • ¥15 C++使用Gunplot
  • ¥15 这个电路是如何实现路灯控制器的,原理是什么,怎么求解灯亮起后熄灭的时间如图?
  • ¥15 matlab数字图像处理频率域滤波
  • ¥15 在abaqus做了二维正交切削模型,给刀具添加了超声振动条件后输出切削力为什么比普通切削增大这么多
  • ¥15 ELGamal和paillier计算效率谁快?
  • ¥15 蓝桥杯单片机第十三届第一场,整点继电器吸合,5s后断开出现了问题
  • ¥15 file converter 转换格式失败 报错 Error marking filters as finished,如何解决?