Skip to content

Latest commit

 

History

History
54 lines (39 loc) · 1.26 KB

File metadata and controls

54 lines (39 loc) · 1.26 KB

Email

Bei diesem Objekt handelt es sich um ein Wertobjekt für eine E-Mail-Adresse.

Erstellung

Für die Erstellung des Objekts ist eine Factory vorhanden. Diese kann per Dependency Injection der eigenen Klasse übergeben werden. Dann kann ganz einfach aus einem String ein Email-Objekt erstellt werden.

<?php
use Esit\Valueobjects\Classes\Email\Valueobjects\EmailValue;
use Esit\Valueobjects\Classes\Email\Services\Factories\EmailFactory;

class myClass
{
    public function __constructor(private readonly EmailFactory $factory)
    {
    }

    public function myTestFunction(): EmailValue
    {
        return $this->factroy->createEmailFromString('info@example.org');
    }
}

Verwendung

Will man den Wert ausgeben, ist die einfachste Form ein echo. Alternativ kann man auch die value()-Methode verwenden.

<?php
use Esit\Valueobjects\Classes\Email\Services\Factories\EmailFactory;

class myClass
{
    public function __constructor(private readonly EmailFactory $factory)
    {
    }

    public function myTestFunction(): void
    {
        $value = $this->factroy->createEmailFromString('info@example.org');

        echo $value;            // gibt "info@example.org" aus
        echo $value->value();   // gibt "info@example.org" aus
    }
}