alwaysblank / rotary
Handle phone numbers.
Installs: 1 464
Dependents: 0
Suggesters: 0
Security: 0
Stars: 9
Watchers: 1
Forks: 0
Open Issues: 1
Requires
- php: ^7.2
Requires (Dev)
- phpunit/phpunit: ^8.0
README
Simplify working with phone numbers.
Warning ⚠
Rotary will support numbers that look like the standard number format used in the United State of America, i.e. nnn-nnnn
or nnn nnn-nnnn
. These can also be prepended with an international country code up to 5 digit long, i.e. nn nnn nnn-nnnn
. Numbers that deviate from this pattern cannot be reliably interpreted.
Usage 💪
Although all the internal behaviors are easily accessible (with the exception of the Number
class, all methods are available as static methods), in general, you'll just be using these methods from the Render
class:
pretty
will result in(123) 456-7890
or456-7890
.simple
will result in123 456-7890
or456-7890
.href
will result intel:+11234567890
ortel:+14567890
.normalized
will result in1234567890
or567890
.
You can call them like this:
use AlwaysBlank\Rotary\Render; echo Render::pretty('1234567890'); // (123) 456-7890 echo Render::pretty('123 456 7890'); // (123) 456-7890 echo Render::pretty('[123) 456/7890'); // (123) 456-7890
You can also instantiate a Rotary
object, which has methods for the different format types:
use AlwaysBlank\Rotary\Rotary; $Rotary = new Rotary('123456789'); echo $Rotary->pretty(); // (123) 456-7890
This can be useful if you want access to several formats on one number.
You can put any non-digit characters you like in your argument and Rotary will simply ignore them--it cares only for digits.
234-5678
and2dfsad__34-5)(6=78
are identical so far as it's concerned.
Note: Rotary will try to interpret strange arguments, but it has limits, so please try to pass it numbers that make sense. 🙏