UTF8 fixed
This commit is contained in:
parent
39a597f6eb
commit
11206fb4f7
|
|
@ -1983,6 +1983,8 @@ private function upsertActivity(Import $import, array $mapped, $mappings, ?array
|
||||||
} elseif (in_array($field, ['action_id', 'decision_id', 'user_id'], true)) {
|
} elseif (in_array($field, ['action_id', 'decision_id', 'user_id'], true)) {
|
||||||
$normalized = is_null($value) ? null : (int) $value;
|
$normalized = is_null($value) ? null : (int) $value;
|
||||||
} elseif (is_string($normalized)) {
|
} elseif (is_string($normalized)) {
|
||||||
|
// Clean invalid UTF-8 sequences from string fields
|
||||||
|
$normalized = mb_convert_encoding($normalized, 'UTF-8', 'UTF-8');
|
||||||
$normalized = trim($normalized);
|
$normalized = trim($normalized);
|
||||||
}
|
}
|
||||||
if (in_array($applyMode, ['both', 'insert'], true)) {
|
if (in_array($applyMode, ['both', 'insert'], true)) {
|
||||||
|
|
@ -2539,8 +2541,9 @@ private function safeErrorMessage(string $msg): string
|
||||||
}
|
}
|
||||||
// Fallback strip invalid bytes
|
// Fallback strip invalid bytes
|
||||||
$msg = @iconv('UTF-8', 'UTF-8//IGNORE', $msg) ?: $msg;
|
$msg = @iconv('UTF-8', 'UTF-8//IGNORE', $msg) ?: $msg;
|
||||||
if (strlen($msg) > 500) {
|
// Use mb_strlen and mb_substr for UTF-8 safety
|
||||||
$msg = substr($msg, 0, 497).'...';
|
if (mb_strlen($msg) > 500) {
|
||||||
|
$msg = mb_substr($msg, 0, 497).'...';
|
||||||
}
|
}
|
||||||
|
|
||||||
return $msg;
|
return $msg;
|
||||||
|
|
@ -2629,9 +2632,9 @@ private function formatAppliedFieldMessage(string $root, array $fields): string
|
||||||
} else {
|
} else {
|
||||||
$disp = method_exists($v, '__toString') ? (string) $v : gettype($v);
|
$disp = method_exists($v, '__toString') ? (string) $v : gettype($v);
|
||||||
}
|
}
|
||||||
// Truncate very long values for log safety
|
// Truncate very long values for log safety (use mb_substr for UTF-8 safety)
|
||||||
if (strlen($disp) > 60) {
|
if (mb_strlen($disp) > 60) {
|
||||||
$disp = substr($disp, 0, 57).'...';
|
$disp = mb_substr($disp, 0, 57).'...';
|
||||||
}
|
}
|
||||||
$parts[] = $k.'='.$disp;
|
$parts[] = $k.'='.$disp;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user