我想从这个站点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];