Code Duplication    Length = 8-10 lines in 4 locations

src/Currency.php 3 locations

@@ 61-68 (lines=8) @@
58
     * @param string    $currencyCode
59
     * @return string
60
     */
61
    public function format($value, $currencyCode)
62
    {
63
        $currency = $this->get($currencyCode);
64
        $format = $this->formatData->get(null);
65
        $formatter = new NumberFormatter($format, NumberFormatter::CURRENCY);
66
67
        return $formatter->formatCurrency($value, $currency);
68
    }
69
70
    /**
71
     * Format an value for the given currency in accounting
@@ 78-85 (lines=8) @@
75
     * @param string    $currencyCode
76
     * @return string
77
     */
78
    public function formatAccounting($value, $currencyCode)
79
    {
80
        $currency = $this->get($currencyCode);
81
        $format = $this->formatData->get(null);
82
        $formatter = new NumberFormatter($format, NumberFormatter::CURRENCY_ACCOUNTING);
83
84
        return $formatter->formatCurrency($value, $currency);
85
    }
86
87
    /**
88
     * Parse a localized value into native PHP format.
@@ 94-101 (lines=8) @@
91
     * @param string $currencyCode
92
     * @return int|float
93
     */
94
    public function parse($value, $currencyCode)
95
    {
96
        $currency = $this->get($currencyCode);
97
        $format = $this->formatData->get(null);
98
        $formatter = new NumberFormatter($format, NumberFormatter::CURRENCY);
99
100
        return $formatter->parseCurrency($value, $currency);
101
    }
102
103
    /**
104
     * Set the default locale.

src/Number.php 1 location

@@ 60-69 (lines=10) @@
57
     * @param string|int|float $value
58
     * @return int|float
59
     */
60
    public function parse($value)
61
    {
62
        $format = $this->get(null);
63
        $formatter = new NumberFormatter($format);
64
65
        // At time of writing, commerceguys/intl has number parsing still coupled to a currency. Parsing does
66
        // succeed however,even though a value is provided without any currency. So let's just pass in
67
        // a very rare currency to avoid unwanted formatting behavior. Sorry Cape Verdean Escudo!
68
        return $formatter->parseCurrency($value, $currency = currency()->get('CVE'));
69
    }
70
71
    /**
72
     * Get a localized entry.