for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
/**
* This file is part of the Pixidos package.
*
* (c) Ondra Votava <[email protected]>
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
declare(strict_types=1);
namespace Pixidos\GPWebPay\Param;
use Pixidos\GPWebPay\Enum\Param;
use Pixidos\GPWebPay\Exceptions\InvalidArgumentException;
use function Pixidos\GPWebPay\assertIsEmail;
use function Pixidos\GPWebPay\assertMaxLength;
class Email implements IParam
{
* @var string
private $value;
* Email constructor.
* @param string $value
* @throws InvalidArgumentException
public function __construct(string $value)
$value = trim($value);
$this->validate($value);
$this->value = $value;
}
public function getValue(): string
return $this->value;
public function __toString(): string
public function getParamName(): string
return Param::EMAIL;
protected function validate(string $value): void
assertIsEmail($value);
assertMaxLength($value, 255, 'EMAIL');