2020-11-06 16:51:37 +08:00
|
|
|
<?php
|
|
|
|
|
/*
|
|
|
|
|
* @Descripttion:
|
|
|
|
|
* @version:
|
|
|
|
|
* @Author: kangkang
|
|
|
|
|
* @Date: 2020-11-06 14:32:57
|
|
|
|
|
* @LastEditors: kangkang
|
2020-11-12 14:25:48 +08:00
|
|
|
* @LastEditTime: 2020-11-12 09:38:30
|
2020-11-06 16:51:37 +08:00
|
|
|
*/
|
2020-11-07 17:48:11 +08:00
|
|
|
header('Access-Control-Allow-Origin: *');
|
|
|
|
|
header("Access-Control-Allow-Methods: *");
|
|
|
|
|
header('Access-Control-Allow-Headers:*');
|
|
|
|
|
header("Access-Control-Allow-Credentials: true");
|
2020-11-06 16:51:37 +08:00
|
|
|
$id = $_GET['product'];
|
|
|
|
|
switch($id){
|
|
|
|
|
case 0:
|
2020-11-07 17:48:11 +08:00
|
|
|
format_all_product(__DIR__.'/data/all.csv');
|
2020-11-06 16:51:37 +08:00
|
|
|
break;
|
|
|
|
|
case 8:
|
2020-11-12 14:25:48 +08:00
|
|
|
format_xingxing(__DIR__.'/data/xingxing.csv',__DIR__.'/data/2288.csv','xxip.vip');
|
2020-11-06 16:51:37 +08:00
|
|
|
break;
|
|
|
|
|
case 6:
|
2020-11-07 17:48:11 +08:00
|
|
|
format_product(__DIR__.'/data/xianfeng.csv','xfip.vip');
|
2020-11-06 16:51:37 +08:00
|
|
|
break;
|
|
|
|
|
case 13:
|
2020-11-07 17:48:11 +08:00
|
|
|
format_product(__DIR__.'/data/jike.csv','jkip.com');
|
2020-11-06 16:51:37 +08:00
|
|
|
break;
|
|
|
|
|
case 1:
|
2020-11-07 17:48:11 +08:00
|
|
|
format_product(__DIR__.'/data/qiangzi.csv','qzip.vip');
|
2020-11-06 16:51:37 +08:00
|
|
|
break;
|
|
|
|
|
case 2:
|
2020-11-07 17:48:11 +08:00
|
|
|
format_product(__DIR__.'/data/xunlian.csv','xlip.vip');
|
2020-11-06 16:51:37 +08:00
|
|
|
break;
|
|
|
|
|
case 14:
|
2020-11-07 17:48:11 +08:00
|
|
|
format_product(__DIR__.'/data/tiantian.csv','ttip.cn');
|
2020-11-06 16:51:37 +08:00
|
|
|
break;
|
|
|
|
|
case 5:
|
2020-11-07 17:48:11 +08:00
|
|
|
format_product(__DIR__.'/data/laoying.csv','lyip.vip');
|
2020-11-06 16:51:37 +08:00
|
|
|
break;
|
|
|
|
|
case 4:
|
2020-11-07 17:48:11 +08:00
|
|
|
format_product(__DIR__.'/data/jinrui.csv','jrip.vip');
|
2020-11-06 16:51:37 +08:00
|
|
|
break;
|
|
|
|
|
case 10:
|
2020-11-07 17:48:11 +08:00
|
|
|
format_product(__DIR__.'/data/wuxian.csv','wxip.net');
|
2020-11-06 16:51:37 +08:00
|
|
|
break;
|
|
|
|
|
case 16:
|
2020-11-07 17:48:11 +08:00
|
|
|
format_product(__DIR__.'/data/shihui.csv','shihui');
|
2020-11-06 16:51:37 +08:00
|
|
|
break;
|
|
|
|
|
case 15:
|
2020-11-09 11:01:45 +08:00
|
|
|
format_product(__DIR__.'/data/gongxiang.csv','shihui');
|
2020-11-06 16:51:37 +08:00
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
2020-11-07 17:48:11 +08:00
|
|
|
function format_all_product($file_path){
|
2020-11-06 16:51:37 +08:00
|
|
|
$list = [];
|
2020-11-07 17:48:11 +08:00
|
|
|
$dns = '';
|
2020-11-09 11:01:45 +08:00
|
|
|
$record = [];
|
2020-11-12 14:25:48 +08:00
|
|
|
$user_count = 0;
|
|
|
|
|
$count = 0;
|
2020-11-06 16:51:37 +08:00
|
|
|
$file = fopen($file_path,'r');
|
2020-11-09 11:01:45 +08:00
|
|
|
$file1 = fopen(__DIR__.'/data/download/all.csv','w');
|
2020-11-06 16:51:37 +08:00
|
|
|
while ($info = fgetcsv($file)) {
|
2020-11-07 17:48:11 +08:00
|
|
|
$data['name'] = $info[0];
|
|
|
|
|
switch($data['name']){
|
|
|
|
|
case '星星':
|
|
|
|
|
$dns = 'xxip.vip';
|
|
|
|
|
break;
|
|
|
|
|
case '先锋':
|
|
|
|
|
$dns = 'xfip.vip';
|
|
|
|
|
break;
|
|
|
|
|
case '极客':
|
|
|
|
|
$dns = 'jkip.com';
|
|
|
|
|
break;
|
|
|
|
|
case '强子':
|
|
|
|
|
$dns = 'qzip.vip';
|
|
|
|
|
break;
|
|
|
|
|
case '讯连':
|
|
|
|
|
$dns = 'xlip.vip';
|
|
|
|
|
break;
|
|
|
|
|
case '天天':
|
|
|
|
|
$dns = 'ttip.cn';
|
|
|
|
|
break;
|
|
|
|
|
case '老鹰':
|
|
|
|
|
$dns = 'lyip.vip';
|
|
|
|
|
break;
|
|
|
|
|
case '金瑞':
|
|
|
|
|
$dns = 'jrip.vip';
|
|
|
|
|
break;
|
|
|
|
|
case '无限':
|
|
|
|
|
$dns = 'wxip.net';
|
|
|
|
|
break;
|
|
|
|
|
case '实惠':
|
|
|
|
|
$dns = 'shihui';
|
|
|
|
|
break;
|
|
|
|
|
case '共享':
|
2020-11-09 11:01:45 +08:00
|
|
|
$dns = 'shihui';
|
2020-11-07 17:48:11 +08:00
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
$data['city'] = $info[1];
|
|
|
|
|
$data['supply'] = $info[2];
|
|
|
|
|
$data['ip'] = $info[3];
|
|
|
|
|
$data['daikuan'] = $info[4];
|
|
|
|
|
$data['onlineuser'] = $info[5];
|
|
|
|
|
$data['maxuser'] = $info[6];
|
|
|
|
|
$data['online'] = $info[7];
|
2020-11-12 14:25:48 +08:00
|
|
|
if(!empty($info[9])){
|
|
|
|
|
$user_count += $data['online']=='正常'?1:0;
|
|
|
|
|
$count++;
|
|
|
|
|
}
|
2020-11-07 17:48:11 +08:00
|
|
|
$data['status'] = $info[8];
|
|
|
|
|
if($dns!='shihui'){
|
|
|
|
|
$ip = explode('.',$info[9]);
|
2020-11-09 11:01:45 +08:00
|
|
|
$data['nasname'] = $ip[0]?ip_repeat($record,$ip[0]).'.'.$dns:'';
|
2020-11-07 17:48:11 +08:00
|
|
|
} else {
|
|
|
|
|
$data['nasname'] = $info[9];
|
|
|
|
|
}
|
2020-11-09 11:01:45 +08:00
|
|
|
fputcsv($file1,$data);
|
2020-11-06 16:51:37 +08:00
|
|
|
$list[] = $data;
|
|
|
|
|
}
|
|
|
|
|
fclose($file);
|
2020-11-09 11:01:45 +08:00
|
|
|
fclose($file1);
|
2020-11-12 14:25:48 +08:00
|
|
|
echo json_encode(['data'=>$list,'count'=>$count,'use_count'=>$user_count]);
|
2020-11-06 16:51:37 +08:00
|
|
|
}
|
|
|
|
|
|
2020-11-07 17:48:11 +08:00
|
|
|
function format_product($file_path,$dns = ''){
|
2020-11-12 14:25:48 +08:00
|
|
|
$list1 = [];
|
2020-11-07 17:48:11 +08:00
|
|
|
$list = [];
|
2020-11-12 14:25:48 +08:00
|
|
|
$user_count = 0;
|
|
|
|
|
$count = 0;
|
|
|
|
|
$key = '';
|
2020-11-07 17:48:11 +08:00
|
|
|
$file = fopen($file_path,'r');
|
2020-11-09 11:01:45 +08:00
|
|
|
$file_path1 = explode('/',$file_path);
|
2020-11-12 14:25:48 +08:00
|
|
|
$file1 = fopen(__DIR__.'/data/download/'.$file_path1[8],'w');
|
2020-11-09 11:01:45 +08:00
|
|
|
$record = [];
|
2020-11-07 17:48:11 +08:00
|
|
|
while ($info = fgetcsv($file)) {
|
2020-11-12 14:25:48 +08:00
|
|
|
if(in_array($info['1'],['曾','龙'])){
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
if(empty($info[9])){
|
|
|
|
|
$key = $info[1];
|
|
|
|
|
}
|
2020-11-07 17:48:11 +08:00
|
|
|
$data['name'] = $info[0];
|
|
|
|
|
$data['city'] = $info[1];
|
|
|
|
|
$data['supply'] = $info[2];
|
|
|
|
|
$data['ip'] = $info[3];
|
|
|
|
|
$data['daikuan'] = $info[4];
|
|
|
|
|
$data['onlineuser'] = $info[5];
|
|
|
|
|
$data['maxuser'] = $info[6];
|
|
|
|
|
$data['online'] = $info[7];
|
2020-11-12 14:25:48 +08:00
|
|
|
if(!empty($info[9])){
|
|
|
|
|
$user_count += $data['online']=='正常'?1:0;
|
|
|
|
|
$count++;
|
|
|
|
|
}
|
2020-11-07 17:48:11 +08:00
|
|
|
$data['status'] = $info[8];
|
|
|
|
|
if($dns!='shihui'){
|
|
|
|
|
$ip = explode('.',$info[9]);
|
2020-11-09 11:01:45 +08:00
|
|
|
$data['nasname'] = $ip[0]?ip_repeat($record,$ip[0]).'.'.$dns:'';
|
2020-11-07 17:48:11 +08:00
|
|
|
} else {
|
|
|
|
|
$data['nasname'] = $info[9];
|
|
|
|
|
}
|
2020-11-09 11:01:45 +08:00
|
|
|
fputcsv($file1,$data);
|
2020-11-12 14:25:48 +08:00
|
|
|
$list1[$key][] = $data;
|
2020-11-07 17:48:11 +08:00
|
|
|
}
|
2020-11-09 11:01:45 +08:00
|
|
|
|
|
|
|
|
fclose($file1);
|
2020-11-07 17:48:11 +08:00
|
|
|
fclose($file);
|
2020-11-12 14:25:48 +08:00
|
|
|
foreach($list1 as $k=>$val){
|
|
|
|
|
foreach($val as $net_data){
|
|
|
|
|
|
|
|
|
|
fputcsv($file3,$net_data);
|
|
|
|
|
$list[] = $net_data;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
echo json_encode(['data'=>$list,'count'=>$count,'use_count'=>$user_count]);
|
2020-11-07 17:48:11 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function format_xingxing($file_path1,$file_path2,$dns){
|
2020-11-06 16:51:37 +08:00
|
|
|
$list1 = [];
|
2020-11-12 14:25:48 +08:00
|
|
|
$list = [];
|
|
|
|
|
$user_count = 0;
|
|
|
|
|
$count = 0;
|
|
|
|
|
$key = '';
|
2020-11-06 16:51:37 +08:00
|
|
|
$file1 = fopen($file_path1,'r');
|
|
|
|
|
$file2 = fopen($file_path2,'r');
|
2020-11-09 11:01:45 +08:00
|
|
|
$record = [];
|
2020-11-12 14:25:48 +08:00
|
|
|
|
|
|
|
|
$keys = [];
|
2020-11-09 11:01:45 +08:00
|
|
|
$file_path = explode('/',$file_path1);
|
|
|
|
|
$file3 = fopen(__DIR__.'/data/download/'.$file_path[8],'w');
|
2020-11-06 16:51:37 +08:00
|
|
|
while ($info = fgetcsv($file1)) {
|
2020-11-12 14:25:48 +08:00
|
|
|
if(empty($info[9])){
|
|
|
|
|
$key = $info[1];
|
|
|
|
|
$keys[] = $key;
|
|
|
|
|
}
|
2020-11-07 17:48:11 +08:00
|
|
|
$data['name'] = $info[0];
|
|
|
|
|
$data['city'] = $info[1];
|
|
|
|
|
$data['supply'] = $info[2];
|
|
|
|
|
$data['ip'] = $info[3];
|
|
|
|
|
$data['daikuan'] = $info[4];
|
|
|
|
|
$data['onlineuser'] = $info[5];
|
|
|
|
|
$data['maxuser'] = $info[6];
|
|
|
|
|
$data['online'] = $info[7];
|
2020-11-12 14:25:48 +08:00
|
|
|
if(!empty($info[9])){
|
|
|
|
|
$user_count += $data['online']=='正常'?1:0;
|
|
|
|
|
$count++;
|
|
|
|
|
}
|
2020-11-07 17:48:11 +08:00
|
|
|
$data['status'] = $info[8];
|
|
|
|
|
$ip = explode('.',$info[9]);
|
2020-11-09 11:01:45 +08:00
|
|
|
$data['nasname'] = $ip[0]?ip_repeat($record,$ip[0]).'.'.$dns:'';
|
2020-11-12 14:25:48 +08:00
|
|
|
$list1[$key][] = $data;
|
2020-11-06 16:51:37 +08:00
|
|
|
}
|
|
|
|
|
while ($info = fgetcsv($file2)) {
|
2020-11-12 14:25:48 +08:00
|
|
|
if(empty($info[9])){
|
|
|
|
|
$key = $info[1];
|
|
|
|
|
if(in_array($key,$keys)){
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
}
|
2020-11-07 17:48:11 +08:00
|
|
|
$data['name'] = $info[0];
|
|
|
|
|
$data['city'] = $info[1];
|
|
|
|
|
$data['supply'] = $info[2];
|
|
|
|
|
$data['ip'] = $info[3];
|
|
|
|
|
$data['daikuan'] = $info[4];
|
|
|
|
|
$data['onlineuser'] = $info[5];
|
|
|
|
|
$data['maxuser'] = $info[6];
|
|
|
|
|
$data['online'] = $info[7];
|
2020-11-12 14:25:48 +08:00
|
|
|
if(!empty($info[9])){
|
|
|
|
|
$user_count += $data['online']=='正常'?1:0;
|
|
|
|
|
$count++;
|
|
|
|
|
}
|
2020-11-07 17:48:11 +08:00
|
|
|
$data['status'] = $info[8];
|
|
|
|
|
$ip = explode('.',$info[9]);
|
2020-11-09 11:01:45 +08:00
|
|
|
$data['nasname'] = $ip[0]?ip_repeat($record,$ip[0]).'.'.$dns:'';
|
2020-11-12 14:25:48 +08:00
|
|
|
$list1[$key][] = $data;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
foreach($list1 as $k=>$val){
|
|
|
|
|
foreach($val as $net_data){
|
|
|
|
|
|
|
|
|
|
fputcsv($file3,$net_data);
|
|
|
|
|
$list[] = $net_data;
|
|
|
|
|
}
|
2020-11-06 16:51:37 +08:00
|
|
|
}
|
2020-11-07 17:48:11 +08:00
|
|
|
|
2020-11-06 16:51:37 +08:00
|
|
|
fclose($file1);
|
|
|
|
|
fclose($file2);
|
2020-11-09 11:01:45 +08:00
|
|
|
fclose($file3);
|
2020-11-12 14:25:48 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
echo json_encode(['data'=>$list,'count'=>$count,'use_count'=>$user_count]);
|
2020-11-09 11:01:45 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function ip_repeat(&$record,$ip){
|
|
|
|
|
for ($i=2;$i<100;$i++){
|
|
|
|
|
if(in_array($ip,$record)){
|
|
|
|
|
if(in_array($ip.'v'.$i,$record)){
|
|
|
|
|
continue;
|
|
|
|
|
} else {
|
|
|
|
|
$record[] = $ip.'v'.$i;
|
|
|
|
|
return $ip.'v'.$i;
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
$record[] = $ip;
|
|
|
|
|
return $ip;
|
|
|
|
|
}
|
|
|
|
|
}
|
2020-11-06 16:51:37 +08:00
|
|
|
}
|