| Conditions | 5 |
| Paths | 5 |
| Total Lines | 21 |
| Lines | 0 |
| Ratio | 0 % |
| Tests | 8 |
| CRAP Score | 5 |
| Changes | 0 | ||
| 1 | <?php |
||
| 46 | private function escapeParams(array $params): array |
||
| 47 | { |
||
| 48 | 1 | foreach ($params as $index => $param) { |
|
| 49 | 1 | if (!is_string($param)) { |
|
| 50 | 1 | continue; |
|
| 51 | } |
||
| 52 | |||
| 53 | // non utf-8 strings break json encoding |
||
| 54 | if (!preg_match('//u', $param)) { |
||
| 55 | 1 | $params[$index] = self::BINARY_DATA_VALUE; |
|
| 56 | 1 | continue; |
|
| 57 | } |
||
| 58 | 1 | ||
| 59 | if (self::MAX_STRING_LENGTH < mb_strlen($param, 'UTF-8')) { |
||
| 60 | $params[$index] = mb_substr($param, 0, self::MAX_STRING_LENGTH - 6, 'UTF-8').' [...]'; |
||
| 61 | continue; |
||
| 62 | } |
||
| 63 | 1 | } |
|
| 64 | |||
| 65 | 1 | return $params; |
|
| 66 | } |
||
| 67 | } |
||
| 68 |