| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- <?php
- namespace libphonenumber;
- class PhoneNumberMatch
- {
- /**
- * The start index into the text.
- * @var int
- */
- private $start;
- /**
- * The raw substring matched.
- * @var string
- */
- private $rawString;
- /**
- * The matched phone number.
- * @var PhoneNumber
- */
- private $number;
- /**
- * Creates a new match
- *
- * @param int $start The start index into the target text
- * @param string $rawString The matched substring of the target text
- * @param PhoneNumber $number The matched phone number
- */
- public function __construct($start, $rawString, PhoneNumber $number)
- {
- if ($start < 0) {
- throw new \InvalidArgumentException('Start index must be >= 0.');
- }
- if ($rawString === null) {
- throw new \InvalidArgumentException('$rawString must be a string');
- }
- $this->start = $start;
- $this->rawString = $rawString;
- $this->number = $number;
- }
- /**
- * Returns the phone number matched by the receiver.
- * @return PhoneNumber
- */
- public function number()
- {
- return $this->number;
- }
- /**
- * Returns the start index of the matched phone number within the searched text.
- * @return int
- */
- public function start()
- {
- return $this->start;
- }
- /**
- * Returns the exclusive end index of the matched phone number within the searched text.
- * @return int
- */
- public function end()
- {
- return $this->start + \mb_strlen($this->rawString);
- }
- /**
- * Returns the raw string matched as a phone number in the searched text.
- * @return string
- */
- public function rawString()
- {
- return $this->rawString;
- }
- public function __toString()
- {
- return "PhoneNumberMatch [{$this->start()},{$this->end()}) {$this->rawString}";
- }
- }
|