|
...
|
...
|
@@ -130,24 +130,26 @@ class lyhDemo extends Command |
|
|
|
|
|
|
|
|
|
|
|
public function _actions(){
|
|
|
|
echo '565'.PHP_EOL;
|
|
|
|
echo '565' . PHP_EOL;
|
|
|
|
ProjectServer::useProject(565);
|
|
|
|
$table = 'gl_product';
|
|
|
|
$filed = 'route';
|
|
|
|
$filed = 'seo_mate';
|
|
|
|
$str = 'Trimos,insize,Fowler,Mahr,Starrett,Tesa,Mitutoyo,Wixey,Shars,Fisso,Spi,Grizzly,Accumaster,Accuremote,Baker,Sharpe,Compac,Earth,Etalon,Federal,Fell,Fisso,Fowler,Gem,Grizzly,Husky,iGaging,Insize,Kanetec,Magnetics,Mighty,Mitutoyo,Noga,Pittsburgh,Procheck,Saker,Scherr Tumico,Shars,Shinwa,SPI,Starrett,Tesa,Technidea,Trimos,Verdict,Wyler,Wixey';
|
|
|
|
$arr = explode(',', $str);
|
|
|
|
foreach ($arr as $val) {
|
|
|
|
$val = strtolower(trim($val)); // 去除空白并转小写
|
|
|
|
$str_s = $val.'-';
|
|
|
|
$val = trim($val); // 保留大小写,因为匹配用正则忽略大小写
|
|
|
|
$str_s = $val . '-';
|
|
|
|
// 先替换包含 "val-" 的
|
|
|
|
DB::connection('custom_mysql')->table($table)
|
|
|
|
->whereRaw("LOWER($filed) LIKE ?", ["%{$str_s}%"]) // 不区分大小写匹配包含
|
|
|
|
->whereRaw("LOWER($filed) LIKE ?", ['%' . strtolower($str_s) . '%'])
|
|
|
|
->update([
|
|
|
|
$filed => DB::raw("REPLACE(LOWER($filed), '$str_s', '')") // 只替换对应字符串,且都转小写替换
|
|
|
|
$filed => DB::raw("REGEXP_REPLACE($filed, '" . preg_quote($str_s, '/') . "', '', 1, 0, 'i')")
|
|
|
|
]);
|
|
|
|
// 再替换包含 "val" 的(不带 -)
|
|
|
|
DB::connection('custom_mysql')->table($table)
|
|
|
|
->whereRaw("LOWER($filed) LIKE ?", ["%{$val}%"]) // 不区分大小写匹配包含
|
|
|
|
->whereRaw("LOWER($filed) LIKE ?", ['%' . strtolower($val) . '%'])
|
|
|
|
->update([
|
|
|
|
$filed => DB::raw("REPLACE(LOWER($filed), '$val', '')") // 只替换对应字符串,且都转小写替换
|
|
|
|
$filed => DB::raw("REGEXP_REPLACE($filed, '" . preg_quote($val, '/') . "', '', 1, 0, 'i')")
|
|
|
|
]);
|
|
|
|
}
|
|
|
|
DB::disconnect('custom_mysql');
|
...
|
...
|
|