$list, 'count' => $count, 'use_count' => $user_count]); } function format_product($file_path, $dns = '') { $list1 = []; $list = []; $user_count = 0; $count = 0; $key = ''; $citys = []; $file = fopen($file_path, 'r'); $file_path1 = explode('/', $file_path); $file1 = fopen(__DIR__ . '/data/download/' . $file_path1[8], 'w'); $record = []; while ($info = fgetcsv($file)) { if (in_array($info['1'], ['曾', '龙'])) { continue; } if (empty($info[9])) { $key = $info[1]; } $data['name'] = $info[0]; $city = city_exist($citys,$info[1]); $citys[] = $city; $data['city'] = $city; $data['supply'] = $info[2]??''; $data['ip'] = $info[3]??''; $data['daikuan'] = $info[4]??''; $data['onlineuser'] = $info[5]??''; $data['maxuser'] = $info[6]??''; $data['online'] = $info[7]??''; if (!empty($info[9])) { $user_count += $data['online'] == '正常' ? 1 : 0; $count++; } $data['status'] = $info[8]; if ($dns != 'shihui') { $ip = explode('.', $info[9]); $data['nasname'] = $ip[0] ? ip_repeat($record, $ip[0]) . '.' . $dns : ''; } else { $data['nasname'] = $info[9]; } fputcsv($file1, $data); $list1[$key][] = $data; } fclose($file1); fclose($file); 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]); } function format_xingxing($file_path1, $file_path2, $dns) { $list1 = []; $list = []; $user_count = 0; $count = 0; $key = ''; $citys = []; $file1 = fopen($file_path1, 'r'); $file2 = fopen($file_path2, 'r'); $record = []; $keys = []; $file_path = explode('/', $file_path1); $file3 = fopen(__DIR__ . '/data/download/' . $file_path[8], 'w'); while ($info = fgetcsv($file1)) { if (empty($info[9])) { $key = $info[1]; $keys[] = $key; } $data['name'] = $info[0]; $city = city_exist($citys,$info[1]); $citys[] = $city; $data['city'] = $city; $data['supply'] = $info[2]??''; $data['ip'] = $info[3]??''; $data['daikuan'] = $info[4]??''; $data['onlineuser'] = $info[5]??''; $data['maxuser'] = $info[6]??''; $data['online'] = $info[7]??''; if (!empty($info[9])) { $user_count += $data['online'] == '正常' ? 1 : 0; $count++; } $data['status'] = $info[8]; $ip = explode('.', $info[9]); $data['nasname'] = $ip[0] ? ip_repeat($record, $ip[0]) . '.' . $dns : ''; $list1[$key][] = $data; } while ($info = fgetcsv($file2)) { if (empty($info[9])) { $key = $info[1]; if (in_array($key, $keys)) { continue; } } $data['name'] = $info[0]; $city = city_exist($citys,$info[1]); $citys[] = $city; $data['city'] = $city; $data['supply'] = $info[2]??''; $data['ip'] = $info[3]??''; $data['daikuan'] = $info[4]??''; $data['onlineuser'] = $info[5]??''; $data['maxuser'] = $info[6]??''; $data['online'] = $info[7]??''; if (!empty($info[9])) { $user_count += $data['online'] == '正常' ? 1 : 0; $count++; } $data['status'] = $info[8]; $ip = explode('.', $info[9]); $data['nasname'] = $ip[0] ? ip_repeat($record, $ip[0]) . '.' . $dns : ''; $list1[$key][] = $data; } foreach ($list1 as $k => $val) { foreach ($val as $net_data) { fputcsv($file3, $net_data); $list[] = $net_data; } } fclose($file1); fclose($file2); fclose($file3); echo json_encode(['data' => $list, 'count' => $count, 'use_count' => $user_count]); } 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; } } } function city_exist($citys, $city) { for ($i = 2; $i < 100; $i++) { if (in_array($city, $citys)) { if (in_array($city . $i, $citys)) { continue; } else { return $city . $i; } } else { return $city; } } }