1000) { return '长度超过1000,请重新输入'; } $long_str_arr = []; $long_str_key = []; $out = []; for ($i = 0; $i < $str_len - 1; $i++) { if (isset($long_str_key[$input_str[$i]])) { $long_str_arr = array_del($long_str_arr, 0, $long_str_key[$input_str[$i]]); } $long_str_arr[$i] = $input_str[$i]; $long_str_key[$input_str[$i]] = $i; if (count($out) < count($long_str_arr)) { $out = $long_str_arr; } } echo count($out); // return implode(array_keys($out_arr)); } function array_del($arr, $start, $end) { while (true) { if ($start > $end) { break; } unset($arr[$start]); $start += 1; } return $arr; } GetLongestStr();