作者 lyh

gx

... ... @@ -35,10 +35,6 @@ if (!function_exists('generateRoute')) {
return strtolower($string);
}
$sign = str_replace(".", "", trim(strtolower(preg_replace('/[^\w.]+/', '-', trim($string))), '-'));
$length = strlen($sign);
if($length > 180){
$sign = trim(mb_substr($sign, 0, 180, 'UTF-8'),'-');
}
return $sign;
}
}
... ...
... ... @@ -68,9 +68,17 @@ class RouteMap extends Base
$info = self::where(['project_id' => $project_id, 'source' => $source, 'source_id'=>$source_id])->first();
$suffix = '';
if(empty($info)){
// $len = 60;
$len = 180;
if($source == self::SOURCE_PRODUCT){
$suffix = '-product';
}
}else{
$len = 180;
}
$length = strlen($sign);
if($length > $len){
$sign = trim(mb_substr($sign, 0, $len, 'UTF-8'),'-');
}
$route = $sign.$suffix;
while(self::isExist($route, $source_id, $project_id)){
... ... @@ -131,6 +139,7 @@ class RouteMap extends Base
$route_map->source_id = $source_id;
$route_map->project_id = $project_id;
}
$route_map->route = $route;
if($source == self::SOURCE_NEWS){
$route_map->path = self::SOURCE_NEWS;
}elseif ($source == self::SOURCE_BLOG){
... ... @@ -138,7 +147,6 @@ class RouteMap extends Base
}elseif($source == self::SOURCE_MODULE){
$route_map->path = self::PATH_MODULE_CATE;
}
$route_map->route = $route;
$route_map->save();
}catch (\Exception $e){
throw new \Exception('路由映射失败');
... ...