function Check_stringType($str1) {
        $strA = trim($str1);
        $lenA = strlen($strA);
        $lenB = mb_strlen($strA, "utf-8");
        if ($lenA === $lenB) {
            return  "1"; //全英文
        } else {
            if ($lenA % $lenB == 0) {
                return  "2"; //全中文
            } else {
               return "3"; //中英混合
            }
       }
}
$sql=$empire->query("select * from {$dbtbpre}ecms_zaoju where id BETWEEN 12295 AND 14126 order by id desc"); 
while($r=$empire->fetch($sql)){
	if(Check_stringType($r[title])==1){
	$empire->fetch1("update {$dbtbpre}ecms_zaoju set cizu='英语造句' where id=$r[id]");
	}
}

帝国CMS批量拆分中文标题为单字更新到指定字段

function Check_stringType($str1) {
        $strA = trim($str1);
        $lenA = strlen($strA);
        $lenB = mb_strlen($strA, "utf-8");
        if ($lenA === $lenB) {
            return  "1"; //全英文
        } else {
            if ($lenA % $lenB == 0) {
                return  "2"; //全中文
            } else {
               return "3"; //中英混合
            }
       }
}
$sql=$empire->query("select * from {$dbtbpre}ecms_zaoju where id BETWEEN 12295 AND 14126 order by id desc"); 
while($r=$empire->fetch($sql)){
$input=$r['title'];
$input=str_replace(',','',$input);
$count=mb_strlen($input,'utf-8'); //按照utf-8字符计数
$output='';
for($i=0;$i<$count;$i++){
	$cnchar=mb_substr($input,$i,1,'utf-8'); //分离出一个需要处理的字符 
	$output.=$cnchar.',';
}
$cz=rtrim($output,",");
	if(Check_stringType($r[title])==2){ //判断是否中文
	$empire->fetch1("update {$dbtbpre}ecms_zaoju set cizu='$cz' where id=$r[id]");
	}
}

声明:有的资源均来自网络转载,版权归原作者所有,如有侵犯到您的权益 请联系邮箱:123456@qq.com 我们将配合处理!

原文地址:帝国CMS批量判断标题是否英文更新指定字段内容发布于2024-08-24 09:33:12

相关推荐