Skip to content

Commit 547e1b1

Browse files
Release version 1.0.4
1 parent 0556bd1 commit 547e1b1

File tree

2 files changed

+12
-8
lines changed

2 files changed

+12
-8
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22

33
Tất cả lịch sử tiến trình phát triển thư viện
44

5+
# 1.0.4
6+
7+
- Cập nhật verify input tại phương thức `resolve` của lớp `Transfomer`.
8+
59
# 1.0.3
610

711
- Sửa lỗi khi chuyển đổi phân số âm có số nguyên là 0.

src/Transformer.php

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,8 @@ public function __construct(?DictionaryInterface $dictionary = null)
4747
*/
4848
public function toWords($number): string
4949
{
50-
if (! is_numeric($number)) {
51-
throw new InvalidArgumentException(sprintf('Number arg (`%s`) must be numeric!', $number));
52-
}
53-
54-
$words = [];
5550
[$minus, $number, $decimal] = $this->resolve($number);
51+
$words = [];
5652
$words[] = $minus ? $this->dictionary->minus() : '';
5753

5854
if (0 === $number && 0 === $decimal) {
@@ -86,10 +82,10 @@ public function toWords($number): string
8682
*/
8783
public function toCurrency($number, $unit = 'đồng'): string
8884
{
89-
$words = [];
90-
$originNumber = $number;
9185
$unit = (array) $unit;
86+
$originNumber = $number;
9287
[$minus, $number, $decimal] = $this->resolve($number);
88+
$words = [];
9389

9490
if (0 === $decimal || ! isset($unit[1])) {
9591
$words[] = $this->toWords($originNumber);
@@ -114,7 +110,11 @@ public function toCurrency($number, $unit = 'đồng'): string
114110
*/
115111
protected function resolve($number): array
116112
{
117-
$number += 0; // trick xóa các số 0 lẻ sau cùng của phân số
113+
if (! is_numeric($number)) {
114+
throw new InvalidArgumentException(sprintf('Number arg (`%s`) must be numeric!', $number));
115+
}
116+
117+
$number += 0; // trick xóa các số 0 lẻ sau cùng của phân số và xử lý kiểu số âm hoặc dương đối với input là chuỗi.
118118
$number = (string) $number;
119119
$minus = '-' === $number[0];
120120

0 commit comments

Comments
 (0)