我有一个看起来像这样的表:

<table class="tableclass">
    <tr>
        <th></th>
        <th> Totals/Avg </th>
        <th><a href='https://url/id=10607' > Column 1 </a></th>
        <th><a href='https://url/id=11658' > Column 2 </a></th>
        <th><a href='https://url/id=12562' > Column 3 </a></th>
        <th><a href='https://url/id=13278' > Column 4 </a></th>
        <th><a href='https://url/id=14696' > Column 5 </a></th>
        <th><a href='https://url/id=16255' > Column 6 </a></th>
    </tr>
    <tr>
        <td><b> Row Info 1 </b></td>
        <td> 5,400.00 </td>
        <td> 900.00 </td>
        <td> 900.00 </td>
        <td> 900.00 </td>
        <td> 900.00 </td>
        <td> 900.00 </td>
        <td> 900.00 </td>
    </tr>
    <tr>
        <td><b> Row Info 2 </b></td>
        <td> 6,000.00 </td>
        <td> 1,000.00 </td>
        <td> 1,000.00 </td>
        <td> 1,000.00 </td>
        <td> 1,000.00 </td>
        <td> 1,000.00 </td>
        <td> 1,000.00 </td>
    </tr>
    <tr>
        <td><b> Row Info 3 </b></td>
        <td> 535,547 </td>
        <td> 91,186 </td>
        <td> 90,148 </td>
        <td> 89,694 </td>
        <td> 90,900 </td>
        <td> 90,662 </td>
        <td> 82,957 </td>
    </tr>
</table>


使用我在这里找到的信息:How to parse this table and extract data from it?

我能够将数据放入数组:

Array
(
    [0] =>
    [1] => Array
        (
            [] => Row Info 1
            [Totals/Avg] => 5,400.00
            [Column 1] => 900.00
            [Column 2] => 900.00
            [Column 3] => 900.00
            [Column 4] => 900.00
            [Column 5] => 900.00
            [Column 6] => 900.00
        )

    [2] => Array
        (
            [] => Row Info 2
            [Totals/Avg] => 6,000.00
            [Column 1] => 1,000.00
            [Column 2] => 1,000.00
            [Column 3] => 1,000.00
            [Column 4] => 1,000.00
            [Column 5] => 1,000.00
            [Column 6] => 1,000.00
        )

    [3] => Array
        (
            [] => Row Info 3
            [Totals/Avg] => 535,547
            [Column 1] => 91,186
            [Column 2] => 90,148
            [Column 3] => 89,694
            [Column 4] => 90,900
            [Column 5] => 90,662
            [Column 6] => 82,957
        )

)


我需要做的是将数据存储到mysql中,其布局与实际数据类似,代替了行信息:

列1-行信息1-行信息2-行信息3

我整夜都在为此而烦恼,Iam在这里。

编辑:
我需要做的基本上是安排数组,这样我就可以存储它了

Array
(
    [0] =>
    [1] => Array
        (
            [] => Column 1
            [Row Info 1] => data
            [Row Info 2] => data
            [Row Info 3] => data
        )

    [2] => Array
        (
            [] => Column 2
            [Row Info 1] => data
            [Row Info 2] => data
            [Row Info 3] => data
        )

    [3] => Array
        (
            [] => Column 3
            [Row Info 1] => data
            [Row Info 2] => data
            [Row Info 3] => data
        )
        ...etc

)

最佳答案

您可以像这样使用正则表达式:

只需将HTML标记存储在PHP变量中为:

    $details = '<table class="tableclass"> <tr> <th> </th> <th> Totals/Avg </th> <th> <a href='https://url/id=10607' > Column 1 </a> </th> <th> <a href='https://url/id=11658' > Column 2 </a> </th> <th> <a href='https://url/id=12562' > Column 3 </a> </th> <th> <a href='https://url/id=13278' > Column 4 </a> </th> <th> <a href='https://url/id=14696' > Column 5 </a> </th> <th> <a href='https://url/id=16255' > Column 6 </a> </th> </tr><tr> <td> <b> Row Info 1 </b> </td><td> 5,400.00 </td><td> 900.00 </td><td> 900.00 </td><td> 900.00 </td><td> 900.00 </td><td> 900.00 </td><td> 900.00 </td></tr><tr> <td> <b> Row Info 2 </b> </td><td> 6,000.00 </td><td> 1,000.00 </td><td> 1,000.00 </td><td> 1,000.00 </td><td> 1,000.00 </td><td> 1,000.00 </td><td> 1,000.00 </td></tr><tr> <td> <b> Row Info 3 </b> </td><td> 535,547 </td><td> 91,186 </td><td> 90,148 </td><td> 89,694 </td><td> 90,900 </td><td> 90,662 </td><td> 82,957 </td></tr>';


之后,使用preg_match_all()作为:

preg_match_all('/info.*?<td>(.*?)<\/td><td>(.*?)<\/td><td>(.*?)<\/td><td>(.*?)<\/td><td>(.*?)<\/td><td>(.*?)<\/td><td>(.*?)<\/td>.*?<\/tr>/is',$details,$matches);


结果,您将发现分别包含行信息1,2和3值的数组。

您可以使用以下方法检查结果

print_r($matches);


现在您可以将您的价值存储到数据库中。

谢谢。

关于php - PHP数组到MYSQL数据库?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27294001/

10-16 13:16
查看更多