Executando verificação de segurança...
2

Faz tempo que não programo em PHP, mas não me parece nada muito complicado, pense de dentro pra fora:

Isso aqui é uma conceito chamado HEREDOC, não é exclusividade do PHP

    <<<LABEL
        Olá, meu nome é {$this->name}, tenho {$this->age} anos de idade
        e sou amigo da {$this->friend}
    LABEL;

Aqui está sendo retornado um novo objeto de uma classe anônima

return new class($name, $age, $friend)
    {
        function __construct(private $name, private $age, private $friend)
        {
        }

        public function saudation(): string
        {
            return <<<LABEL
                Olá, meu nome é {$this->name}, tenho {$this->age} anos de idade
                e sou amigo da {$this->friend}
            LABEL;
        }
    };

Aqui está criando uma função anônima que recebe 2 parâmetros e utiliza uma variável do escopo externo ao da função, no caso $friend que está declarado logo acima.
E essa funçõa anônima está sendo atribuída à uma variável chamada $getPerson.
Quem é de JS está bem acostumado a atribuir funções para variáveis.

$getPerson = function ($name, $age) use ($friend): object {
    ////
}

E aqui é apenas a chamada da função contida na variável

$person = $getPerson("Gabriel", 19);

Não tem nada demais nesse código, só é uma sintaxe pouco usada em cursos para iniciantes.
Outra forma de se fazer a mesma coisa, mas como uma sintaxe mais comum para que está aprendendo seria aglo mais ou menos assim:

class Person {

    private $name;
    private $age;
    private $friend;
	
	// Essa é a forma mais clássica, mas há formas mais modernas
	// de declarar atributos no construtor
    function __construct($name, $age, $friend) 
    {
        $this->name = $name;
        $this->age = $age;
        $this->friend = $friend;
    }

    public function saudation(): string
    {
        return <<<LABEL
            Olá, meu nome é {$this->name}, tenho {$this->age} anos de idade
            e sou amigo da {$this->friend}
        LABEL;
    }
};

$person = new Person("Gabriel", 19, "Allyce");
echo $person->saudation();

Carregando publicação patrocinada...