(.*\s*?)<\/tbody>/is", $qiangzi, $result); preg_match_all("/(.*?)<\/tr>/is", $result[0], $result); // echo $result[0][0]; // print_r($result[0]); $list = []; foreach ($result[0] as $key => $info) { preg_match_all("/(.*?)<\/td>/is", $info, $data); $get_data = []; $td_info = $data[1]; if (isset($td_info[1])) { $daikuan = explode('IP', trim($td_info[2])); $get_data['address'] = trim($td_info[0]); $get_data['yuming'] = trim($td_info[1]); $get_data['ip'] = trim($daikuan[0]) . 'IP'; $get_data['daikuan'] = trim($daikuan[1]); preg_match_all("/(.*?)<\/span>/is", trim($td_info[3]), $status); $get_data['status'] = $status[1][0]; } else { preg_match_all("/(.*?)<\/font>/is", trim($td_info[0]), $address); $get_data['address'] = $address[1][0]; } $list[] = $get_data; } echo json_encode(['data' => $list]);