我目前正在处理某些事情,我需要在页面上提取所有IP范围(以CIDR格式列出)。
以下是说明任务的示例网址:
我知道如何远程打开文件并解析JSON,我只需要在数组中找到IP范围并将它们输出到文件中。
答案 0 :(得分:1)
Rough n Ready但似乎提取了所需内容 - 如果不是毫无疑问,一些小调整会让你看错。
$url='https://stat.ripe.net/data/registry-browser/data.json?include_backward_refs=1&preferred_version=0.3&resource=AS28961&use_live_lookups=1';
$data=file_get_contents( $url );
$json=json_decode( $data );
$backrefs=$json->data->backward_refs;
foreach( $backrefs as $backref ){
$fields=$backref->fields;
printf('<pre>%s</pre>',print_r( $fields[0]->value, true ));
}
输出:
193.228.63.0/24
195.39.226.0/23
2001:67c:594::/48
输出到文件
$filename = __DIR__ . '/cidr.txt'; /* change as appropriate */
$url='https://stat.ripe.net/data/registry-browser/data.json?include_backward_refs=1&preferred_version=0.3&resource=AS28961&use_live_lookups=1';
$data=file_get_contents( $url );
$json=json_decode( $data );
$backrefs=$json->data->backward_refs;
foreach( $backrefs as $backref ){
$fields=$backref->fields;
file_put_contents( $filename, $fields[0]->value . PHP_EOL, FILE_APPEND );
}