fromArray($data); } } /** * @return string */ public function getName() { return $this->_name; } /** * @param string $value Наименование поставщика */ public function setName($value) { if ($value === null || $value === '') { $this->_name = null; } elseif (!TypeCast::canCastToString($value)) { throw new InvalidPropertyValueTypeException('Invalid name value type', 0, 'receipt.supplier.name'); } else { $this->_name = (string)$value; } } /** * @return string */ public function getPhone() { return $this->_phone; } /** * @param string $value Номер телефона пользователя в формате ITU-T E.164 */ public function setPhone($value) { if ($value === null || $value === '') { $this->_phone = null; } elseif (!TypeCast::canCastToString($value)) { throw new InvalidPropertyValueTypeException('Invalid phone value type', 0, 'receipt.supplier.phone'); } else { $this->_phone = (string)$value; } } /** * @return string */ public function getInn() { return $this->_inn; } /** * @param string $value ИНН пользователя (10 или 12 цифр) */ public function setInn($value) { if ($value === null || $value === '') { $this->_inn = null; } elseif (!TypeCast::canCastToString($value)) { throw new InvalidPropertyValueTypeException('Invalid inn value type', 0, 'receipt.supplier.inn'); } elseif (!preg_match('/^([0-9]{10}|[0-9]{12})$/', (string)$value)) { throw new InvalidPropertyValueException('Invalid inn value: "'.$value.'"', 0, 'receipt.supplier.inn'); } else { $this->_inn = (string)$value; } } }