doufei4923 2016-10-15 10:22
浏览 39
已采纳

简单的html dom过滤器表单获取名称和值为php数组

Im new to using simple_html_dom, i have this form which i dont intend to submit but i want to get the names and values as an array in php.

$url = '<!DOCTYPE html>
    <html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    </head>
    <body>
        <div class="waitmsg" id="WaitMessage" style="display:none">
        <WaitMessage>Transaction Processing, Please Wait...</WaitMessage>
    </div>
    <form id="mpiRun" action="form.php" method="post">
        <input type="hidden" name="dest" value="33777" /> 
        <input type="hidden" name="one" value="102900" /> 
        <br>      
        <br>
        <noscript>      
            <center>      
                <h1>Processing Transaction</h1>
                <input type="submit" />      
            </center>
        </noscript>
    </form>
</body>
</html>';

I want to search through this in and return a php array e.g

Array
(
    [dest] => 33777
    [one] => 102900
)
  • 写回答

1条回答 默认 最新

  • donglu1913 2016-10-15 10:36
    关注

    this should do the trick:

    <?php
    
    include_once('simple_html_dom.php');
    
    $url = '<!DOCTYPE html>
    <html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    </head>
    <body>
        <div class="waitmsg" id="WaitMessage" style="display:none">
        <WaitMessage>Transaction Processing, Please Wait...</WaitMessage>
    </div>
    <form id="mpiRun" action="form.php" method="post">
        <input type="hidden" name="dest" value="33777" /> 
        <input type="hidden" name="one" value="102900" /> 
        <br>      
        <br>
        <noscript>      
            <center>      
                <h1>Processing Transaction</h1>
                <input type="submit" />      
            </center>
        </noscript>
    </form>';
    
    
    
    $html = str_get_html($url);
    $arr = [];
    foreach ($html->find('input') as $element) {
        if ($element->type == "hidden") {
            $arr[$element->name] = $element->value;
        }
    
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 unity第一人称射击小游戏,有demo,在原脚本的基础上进行修改以达到要求
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line