Subversion-Projekte lars-tiefland.laravel_shop

Revision

Revision 148 | Details | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
148 lars 1
<?php
2
 
3
declare(strict_types=1);
4
 
5
namespace Brick\Math\Exception;
6
 
7
/**
8
 * Exception thrown when attempting to create a number from a string with an invalid format.
9
 */
10
class NumberFormatException extends MathException
11
{
12
    /**
13
     * @param string $char The failing character.
14
     *
15
     * @psalm-pure
16
     */
17
    public static function charNotInAlphabet(string $char) : self
18
    {
19
        $ord = \ord($char);
20
 
21
        if ($ord < 32 || $ord > 126) {
22
            $char = \strtoupper(\dechex($ord));
23
 
24
            if ($ord < 10) {
25
                $char = '0' . $char;
26
            }
27
        } else {
28
            $char = '"' . $char . '"';
29
        }
30
 
31
        return new self(sprintf('Char %s is not a valid character in the given alphabet.', $char));
32
    }
33
}