【问题标题】:Fetch Selected code from a HTML file and store in an PHP array从 HTML 文件中获取选定的代码并存储在 PHP 数组中
【发布时间】:2013-01-16 14:02:48
【问题描述】:

我有一个包含 Javascript 代码的 HTML 文件:

<SCRIPT language="javascript" type="text/javascript">
var statList = new Array(
0, "192.168.1.179", "88-53-95-28-2B-AF", 194280, 101141053, 0, 0, 0, 0, 0, 0, 0, 0, 
1, "192.168.1.170", "60-C5-47-10-37-FD", 132316, 65860791, 0, 0, 0, 0, 0, 0, 0, 0, 
2, "192.168.1.151", "68-5D-43-21-76-95", 9887, 3898646, 0, 0, 0, 0, 0, 0, 0, 0, 
3, "192.168.1.134", "6C-3E-6D-8C-FF-62", 26405, 7521875, 0, 0, 0, 0, 0, 0, 0, 0, 
4, "192.168.1.124", "04-F7-E4-78-D3-D0", 6189, 1791672, 0, 0, 0, 0, 0, 0, 0, 0, 
5, "192.168.1.121", "60-C5-47-10-40-92", 122657, 91113301, 0, 0, 0, 0, 0, 0, 0, 0);
</SCRIPT>

我想从这个文件中获取内容。这是javascript中的一个数组,即“StatList”。我想在一个数组中选择所有 IP 地址,如 (192.168.1.179),在另一个 PHP 数组中选择所有 Mac 地址,如 (88-53-95-28-2B-AF)。

我怎样才能做到这一点?

【问题讨论】:

标签: php javascript html curl


【解决方案1】:

如果您将 HTML 作为字符串,您可以使用如下正则表达式来抓取它:

<?php

    $html = '<SCRIPT language="javascript" type="text/javascript">
    var statList = new Array(
    0, "192.168.1.179", "88-53-95-28-2B-AF", 194280, 101141053, 0, 0, 0, 0, 0, 0, 0, 0, 
    1, "192.168.1.170", "60-C5-47-10-37-FD", 132316, 65860791, 0, 0, 0, 0, 0, 0, 0, 0, 
    2, "192.168.1.151", "68-5D-43-21-76-95", 9887, 3898646, 0, 0, 0, 0, 0, 0, 0, 0, 
    3, "192.168.1.134", "6C-3E-6D-8C-FF-62", 26405, 7521875, 0, 0, 0, 0, 0, 0, 0, 0, 
    4, "192.168.1.124", "04-F7-E4-78-D3-D0", 6189, 1791672, 0, 0, 0, 0, 0, 0, 0, 0, 
    5, "192.168.1.121", "60-C5-47-10-40-92", 122657, 91113301, 0, 0, 0, 0, 0, 0, 0, 0);
    </SCRIPT>';
    $regex = '/\d+,\s+"(?P<ip>[\d\.]+)",\s+"(?P<mac>[\-\dA-F]+)",/';

    $matches = array();
    preg_match_all($regex, $html, $matches);
    echo "<pre>";
    print_r($matches['ip']);
    print_r($matches['mac']);

?>

working example

【讨论】:

    猜你喜欢
    • 2014-09-28
    • 2023-03-19
    • 1970-01-01
    • 2015-03-06
    • 2022-01-23
    • 2013-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多