Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
Total | |
100.00% |
6 / 6 |
|
100.00% |
2 / 2 |
CRAP | |
100.00% |
1 / 1 |
Jp | |
100.00% |
6 / 6 |
|
100.00% |
2 / 2 |
2 | |
100.00% |
1 / 1 |
isHiragana | |
100.00% |
3 / 3 |
|
100.00% |
1 / 1 |
1 | |||
isKatakana | |
100.00% |
3 / 3 |
|
100.00% |
1 / 1 |
1 |
1 | <?php |
2 | |
3 | /** |
4 | * @license MIT |
5 | * @author hazuki3417<hazuki3417@gmail.com> |
6 | * @copyright 2021 hazuki3417 all rights reserved. |
7 | */ |
8 | |
9 | namespace Selen\Str\Verify; |
10 | |
11 | class Jp |
12 | { |
13 | /** |
14 | * ひらがなかどうか確認します。(Unicode範囲:U+3041~U+3096) |
15 | * |
16 | * @return bool ひらがなの場合はtrueを、それ以外の場合はfalseを返します |
17 | * |
18 | * @see https://www.unicode.org/charts/PDF/U3040.pdf |
19 | */ |
20 | public static function isHiragana(string $str) |
21 | { |
22 | $range = 'ぁ-ゖ'; |
23 | $pattern = \sprintf('/[%s]/u', $range); |
24 | |
25 | return 0 < preg_match($pattern, $str); |
26 | } |
27 | |
28 | /** |
29 | * カタカナかどうか確認します。(Unicode範囲:U+30A1~U+30FA) |
30 | * |
31 | * @return bool カタカナの場合はtrueを、それ以外の場合はfalseを返します |
32 | * |
33 | * @see https://www.unicode.org/charts/PDF/U30A0.pdf |
34 | */ |
35 | public static function isKatakana(string $str) |
36 | { |
37 | $range = 'ァ-ヺ'; |
38 | $pattern = \sprintf('/[%s]/u', $range); |
39 | |
40 | return 0 < preg_match($pattern, $str); |
41 | } |
42 | } |