Как добавить данные запроса для поддержки электронной почты, используя Illuminate \ Http \ Request; - PullRequest
0 голосов
/ 03 июня 2018

Я создал контактную форму «Запросить поддержку» (используя модал) в своем приложении.Каков наилучший / самый чистый способ добавить / прикрепить дамп переменной $request?(Глобальные переменные PHP, данные сеанса, ...) Потому что я считаю, что эти данные могут мне сильно помочь в отладке.

Что я пробовал:

SupportController:

public function send(Request $request)
    {
        Mail::send('emails.support', ['request' => $request], function ($message) use ($request) {
            $message->from($request->user()->email, $request->user()->name);
            $message->subject(trans('Support request'));
        });

        $request->session()->flash('flash_message', __('Message sent!'));
        return redirect()->back();
    }

emails.support.blade

{{ print_r($request) }}

Но я получаюсообщение об ошибке исчерпания объема памяти (даже после того, как я изменил ограничение на 1 ГБ).

Так что может быть лучший способ сделать это.Возможно также более читаемый способ.

1 Ответ

0 голосов
/ 04 июня 2018

Не выкидывайте весь объект запроса, вместо этого выбирайте то, что вы считаете необходимым для отладки.Например:

All:
@foreach($request->all() as $key => $val)
   {{ $key }} = {{ $val }}
@endforeach
<hr>
Route Name: {{ $request->route()->getName() }}
Route Action: {{ $request->route()->getAction() }}
Route Method: {{ $request->route()->getMethod() }}
<hr>
Headers:
@foreach($request->headers->all() as $key => $val)
   {{ $key }} = {{ $val }}
@endforeach

и т. Д. И т. Д.

Или вы можете использовать метод Guzzle * str для сериализации объекта запроса или ответа.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...