作者 lyh

gx

... ... @@ -640,6 +640,21 @@ function characterTruncation($string,$pattern){
return '';
}
}
/**
* @remark :字符串截取
* @name :characterTruncationStr
* @author :lyh
* @method :post
* @time :2024/5/14 16:24
*/
function characterTruncationStr($string,$startStr,$endStr){
$start = strpos($string, $startStr);
$end = strpos($string, $endStr) + strlen($endStr);
return substr($string, $start, $end - $start);
}
if (!function_exists('getAutoLoginCode')) {
/**
* @remark :自动登录加密
... ...
... ... @@ -599,6 +599,9 @@ class BTemplateLogic extends BaseLogic
public function handleTemplateHtml($html){
//字符串截取
$param['main_html'] = characterTruncation($html,'/<main\b[^>]*>(.*?)<\/main>/s');
if(empty($param['main_html'])){
$param['main_html'] = characterTruncationStr($html,"<main","</main>");
}
$param['main_css'] = characterTruncation($html,'/<style id="globalsojs-styles">(.*?)<\/style>/s');
return $this->success($param);
}
... ... @@ -646,6 +649,10 @@ class BTemplateLogic extends BaseLogic
if($is_custom != BTemplate::IS_NO_CUSTOM){
return true;
}
$main_html = characterTruncation($html,'/<main\b[^>]*>(.*?)<\/main>/s');
if(!empty($main_html)){
$main_html = characterTruncationStr($html,"<main","</main>");
}
$data = [
'template_id'=>$template_id,
'project_id'=>$this->user['project_id'],
... ... @@ -656,7 +663,7 @@ class BTemplateLogic extends BaseLogic
'is_list'=>$is_list,
'source'=>$source,
'source_id'=>$source_id,
'main_html' => characterTruncation($html,'/<main\b[^>]*>(.*?)<\/main>/s'),
'main_html' => $main_html,
'main_css' => characterTruncation($html,'/<style id="globalsojs-styles">(.*?)<\/style>/s'),
'head_html' => characterTruncation($html,'/<header\b[^>]*>(.*?)<\/header>/s'),
'footer_html' => characterTruncation($html,'/<footer\b[^>]*>(.*?)<\/footer>/s'),
... ... @@ -747,7 +754,7 @@ class BTemplateLogic extends BaseLogic
public function handleSaveParam($param){
//字符串截取
$param['head_html'] = characterTruncation($param['html'],'/<header\b[^>]*>(.*?)<\/header>/s');
$param['main_html'] = characterTruncation($param['html'],'/<main\b[^>]*>(.*?)<\/main>/s');
$param['main_html'] = characterTruncationStr($param['html'],"<main","</main>");
$param['footer_html'] = characterTruncation($param['html'],'/<footer\b[^>]*>(.*?)<\/footer>/s');
$param['head_css'] = characterTruncation($param['html'],'/<style id="globalsojs-header">(.*?)<\/style>/s');
$param['main_css'] = characterTruncation($param['html'],'/<style id="globalsojs-styles">(.*?)<\/style>/s');
... ...