| @@ 272-289 (lines=18) @@ | ||
| 269 | ||
| 270 | ||
| 271 | $ar = []; |
|
| 272 | switch ($this->configs['fitMode']) { |
|
| 273 | case self::FIT_TO_TITLE: |
|
| 274 | $ar = $keyOfTitle; |
|
| 275 | break; |
|
| 276 | ||
| 277 | case self::FIT_TO_DATA: |
|
| 278 | $ar = $keyOfData; |
|
| 279 | break; |
|
| 280 | ||
| 281 | case self::FIT_INTERSECTION: |
|
| 282 | $ar = array_intersect($keyOfTitle, $keyOfData); |
|
| 283 | break; |
|
| 284 | ||
| 285 | case self::FIT_UNION: |
|
| 286 | $ar = array_unique(array_merge($keyOfTitle, $keyOfData)); |
|
| 287 | break; |
|
| 288 | default: |
|
| 289 | } |
|
| 290 | ||
| 291 | $this->fitTitle($ar); |
|
| 292 | $this->fitData($ar); |
|
| @@ 62-82 (lines=21) @@ | ||
| 59 | return $listDto; |
|
| 60 | } |
|
| 61 | ||
| 62 | switch ($this->mode) { |
|
| 63 | case FitMode::TO_TITLE: |
|
| 64 | $fittedKeys = $headKeys; |
|
| 65 | break; |
|
| 66 | ||
| 67 | case FitMode::TO_DATA: |
|
| 68 | $fittedKeys = $bodyKeys; |
|
| 69 | break; |
|
| 70 | ||
| 71 | case FitMode::INTERSECTION: |
|
| 72 | $fittedKeys = array_intersect($headKeys, $bodyKeys); |
|
| 73 | break; |
|
| 74 | ||
| 75 | case FitMode::UNION: |
|
| 76 | $fittedKeys = |
|
| 77 | array_unique(array_merge($headKeys, $bodyKeys)); |
|
| 78 | break; |
|
| 79 | ||
| 80 | default: |
|
| 81 | throw new InvalidFitModeException; |
|
| 82 | } |
|
| 83 | ||
| 84 | $this->fitHead($listDto, $fittedKeys); |
|
| 85 | $this->fitBody($listDto, $fittedKeys); |
|