| Conditions | 5 |
| Paths | 5 |
| Total Lines | 20 |
| Code Lines | 10 |
| Lines | 0 |
| Ratio | 0 % |
| Tests | 11 |
| CRAP Score | 5 |
| Changes | 0 | ||
| 1 | <?php |
||
| 46 | 1 | 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 | 1 | if (!preg_match('//u', $param)) { |
|
| 55 | 1 | $params[$index] = self::BINARY_DATA_VALUE; |
|
| 56 | 1 | continue; |
|
| 57 | } |
||
| 58 | |||
| 59 | 1 | if (self::MAX_STRING_LENGTH < mb_strlen($param, 'UTF-8')) { |
|
| 60 | 1 | $params[$index] = mb_substr($param, 0, self::MAX_STRING_LENGTH - 6, 'UTF-8').' [...]'; |
|
| 61 | 1 | continue; |
|
| 62 | } |
||
| 63 | } |
||
| 64 | |||
| 65 | 1 | return $params; |
|
| 66 | } |
||
| 68 |