From 30401382fdf45d24400dbe0cb70f44099dac8ed9 Mon Sep 17 00:00:00 2001 From: Hide_D Date: Tue, 7 Jun 2022 23:50:07 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20DTO=EC=9D=98=20=EA=B8=B0=EB=B3=B8=20conv?= =?UTF-8?q?erter=EC=97=90=EC=84=9C=20bool=EC=9D=80=200,1=20=EA=B0=80?= =?UTF-8?q?=EB=8A=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/sammo/DTO/Converter/DefaultConverter.php | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/sammo/DTO/Converter/DefaultConverter.php b/src/sammo/DTO/Converter/DefaultConverter.php index 49011ea5..27451cdf 100644 --- a/src/sammo/DTO/Converter/DefaultConverter.php +++ b/src/sammo/DTO/Converter/DefaultConverter.php @@ -78,11 +78,18 @@ class DefaultConverter implements Converter return $raw; } - if($type === 'bool' && is_bool($raw)){ - $success = true; - return $raw; + if($type === 'bool'){ + if(is_bool($raw)){ + $success = true; + return $raw; + } + if($raw === 0 || $raw === 1){ + $success = true; + return $raw !== 0; + } } + return null; } @@ -100,7 +107,7 @@ class DefaultConverter implements Converter } } - throw new \Exception('DefaultConverter can not convert'); + throw new \Exception('DefaultConverter can not convert '.gettype($raw)); } public function convertTo(mixed $data): string|array|int|float|bool|null