Laravel = własna reguła i zwrócenie wiadomości

0

Panowie szybkie pytanie, jest kod:

public function passes($attribute, $value)
    {
        $emailExist = $client->verify($value);
        $errorCode = $emailExist->isvalid()[1];
        return $emailExist->isvalid()[0] ? true : false;
    }

    public function message()
    {
        return 'dupa' . $errorCode;  
    }

chciałbym w metodzie message wyświetlić opis błedu , ktoś podpowie jak się do tego dobrać ?

0

A po co?

0

@TomRiddle: chociażby po to , że API zwraca mi opis błędu, który mógłbym użytkownikowi przekazać.

0
casperii napisał(a):

@TomRiddle: chociażby po to , że API zwraca mi opis błędu, który mógłbym użytkownikowi przekazać.

Nie, pytałem czemu chcesz zaprojektować swój kod w taki średni sposób?

Zamiast takich dwóch metod, najelpiej jakbyś rzucił wyjąek w którym byłby ten error code.

class YourException extends Exception {
}

public function passes($attribute, $value): boolean {
    $emailExist = $client->verify($value);
    $errorCode = $emailExist->isvalid()[1];
    if ($emailExist->isvalid()[0]) {
        throw new YourException("dupa", $errorCode);
    }
}

// ...
try {
    passes($attr, $value);
}
catch (YourException $exception) {
  $exception->getMessage();
  $exception->getCode();
}
0

W sumie to po co Ci wgl ta funkcja passes() i message? To API wygląda jakby było gotowe do użycia tak po prostu z PHPowym list()?

list($valid, $errorCode) = $client->verify($value)->isvalid();

I po prostu sobie sobie użyj $valid i $errorCode.

0

@TomRiddle: dziękuje za pomoc, Laravela dopiero się uczę i została mi podsunięta podpowiedź by użyć własnej reguły - zatem ją stworzyłem a w praktyce wyszło , że skorzystam z zewnętrznego API do sprawdzenia poprawności wiarygodności maila.

Nie wiem czy to odpowiednie miejsce by podpiąć swój kolejny problem, ale coś pomieszałem przy swoim projekcie i wywala mi błędy przy próbie odpalenia php artisan serve
załączam screen z konsoli
laravel

0
casperii napisał(a):

@TomRiddle: dziękuje za pomoc, Laravela dopiero się uczę i została mi podsunięta podpowiedź by użyć własnej reguły - zatem ją stworzyłem a w praktyce wyszło , że skorzystam z zewnętrznego API do sprawdzenia poprawności wiarygodności maila.

Nie wiem czy to odpowiednie miejsce by podpiąć swój kolejny problem, ale coś pomieszałem przy swoim projekcie i wywala mi błędy przy próbie odpalenia php artisan serve
załączam screen z konsoli
laravel

Lepiej załóż nowy wątek z odpowiednią nazwą.

A zanim to zrobisz postaraj się użyć w miarę nowego php 7.3 albo 7.4, postaraj się ściągnąć nowe wersje zależności, i jeśli chcesz pomóc komuś pomoc Tobie to zrobić; to np pokaż repo na githubie.

0

@TomRiddle: ok, problem naprawiony, gdyby ktoś kiedyś miał podobnie, to zaktualizowałem php w XAMPPie oraz wykonałem polecenie:

update composer --no-plugins

1 użytkowników online, w tym zalogowanych: 0, gości: 1