From b2c4ad7b818c48dc7d5a993056cd9e65a28c03bc Mon Sep 17 00:00:00 2001 From: auooru Date: Fri, 2 Jun 2023 16:13:30 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=BC=E5=AE=B9pg=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Components/pgsql/src/Model/PgModel.php | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/Components/pgsql/src/Model/PgModel.php b/src/Components/pgsql/src/Model/PgModel.php index d72cd8739c..7e7f13251f 100644 --- a/src/Components/pgsql/src/Model/PgModel.php +++ b/src/Components/pgsql/src/Model/PgModel.php @@ -30,9 +30,10 @@ protected static function parseDateTime(?string $columnType, $timeAccuracy, ?flo case 'timetz': if ($timeAccuracy >= 1000) { - [$usec, $sec] = explode(' ', microtime()); + $sec = (int) $microTime; + $usec = $microTime - $sec; // 获取小数部分 - return date('H:i:s.', (int) $sec) . (int) ((float) $usec * $timeAccuracy); + return date('H:i:s.', $sec) . (int) ((float) $usec * $timeAccuracy); } else { @@ -43,9 +44,10 @@ protected static function parseDateTime(?string $columnType, $timeAccuracy, ?flo case 'timestamptz': if ($timeAccuracy >= 1000) { - [$usec, $sec] = explode(' ', microtime()); + $sec = (int) $microTime; + $usec = $microTime - $sec; // 获取小数部分 - return date('Y-m-d H:i:s.', (int) $sec) . (int) ((float) $usec * $timeAccuracy); + return date('Y-m-d H:i:s.', $sec) . (int) ($usec * $timeAccuracy); } else { @@ -55,7 +57,7 @@ protected static function parseDateTime(?string $columnType, $timeAccuracy, ?flo case 'int': case 'int2': case 'int4': - return time(); + return (int) $microTime; case 'int8': return (int) ($microTime * (true === $timeAccuracy ? 1000 : $timeAccuracy)); default: