搜索站点中的文件并将其复制到数组中


searching files in a site and copy them to an array

我想从这个站点http://cvs.snort.org/viewcvs.cgi/snort/rules/搜索*.rules

并将文件的字符串复制到数组

我该怎么做?例如:

$array=array('backdoor.rules','bad-traffic.rules');

我可以用

$str=file_get_contents( 'http://cvs.snort.org/viewcvs.cgi/snort/rules');

但是我怎么搜索呢?

您需要使用正则表达式来获得源

的任何匹配。
    $url = 'http://cvs.snort.org/viewcvs.cgi/snort/rules/';
    $contents = file_get_contents($url);
    //Regex to match any links that have .rule in it
    preg_match_all('/<a href="([^"]+'.rules[^"]*)">/i', $contents, $result, PREG_PATTERN_ORDER);
    foreach ($result[1] as $link) {
        //Fetch the link and save
    }

这段代码将获取网页的内容,并运行一个正则表达式来匹配任何包含.rules的链接。

在循环中,您可以保存文件(使用file_get_contents,然后使用fopen, fwrite和fclose)

1。获取内容

$contents = file_get_contents('http://cvs.snort.org/viewcvs.cgi/snort/rules/');

2。搜索并将找到的文件放入$matches[1]

preg_match_all('/href="([^"]+'.rules)"/', $contents, $matches);

3。对数组

执行任何操作
$matches[1];