์๋ฆผ๊ธฐ๋ฅ ์ค ๊ฐ์ฅ ์ ํต์ ์ธ ๋ฐฉ๋ฒ์ธ ๋ฉ์ผ์ smtp
,mail
,mailgun
,log
๋ฑ ์ฌ๋ฌ ๋๋ผ์ด๋ฒ ์ค์์ ์ ํํด์ ์ฌ์ฉํ ์ ์๋ค.
config/mail.php
์์ from
๋ถ๋ถ์ value๋ฅผ ์์ ํ์ฌ ๋ณด๋ด๋ ์ฌ๋์ ๊ดํ ์ ์ญ์ค์ ์ ํ ์ ์๋ค.
gmail
gmail์ smtpํ๋กํ ์ฝ์ ์ด์ฉํ๊ณ ์ง๋ฉ์ผ ๋๋ผ์ด๋ฒ๋ฅผ ์ค์ ํด์ฃผ์ด์ผ ํ๋๋ฐ .env
ํ์ผ์ ์ด์ด ๋ค์๊ณผ ๊ฐ์ด ์์ฑํด์ฃผ๋ฉด ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ง๋ฉ์ผ์ ๋ก๊ทธ์ธํ์ฌ ๋ด๊ณ์ =>๋ก๊ทธ์ธ ๋ฐ ๋ณด์ํ์ด์ง=>๋ณด์์์ค ๋ฎ์์ฑ ํ์ฉ
์ ์ฌ์ฉํจ์ผ๋ก ๋ฐ๊พธ์ด ์ฃผ์ด์ผ ํ๋ค.
๋ฉ์ผ ๋ณด๋ด๋ ๋ก์ง ์์
Mail ํ์ฌ๋์ send()๋ฉ์๋๋ก ๋ฉ์ผ์ ๋ณด๋ด๋ฉฐ ์ด ๋ฉ์๋์ ์ฒซ๋ฒ์งธ ์ธ์๋ ๋ฉ์ผ ๋ณธ๋ฌธ์ ์ฌ์ฉํ ๋ทฐ
์ด๋ค. ๋๋ฒ์งธ ์ธ์๋ ๋ทฐ์ ์ ๋ฌํ ๋ฐ์ดํฐ
์ด๊ณ ์ธ๋ฒ์งธ ์ธ์๋ ๋ฉ์ผ ๋ด์ฉ์ ๊ตฌ์ฑํ๋ ํด๋ก์
์ด๋ค. ํด๋ก์ ์์ $message๋ฅผ ์ธ์๋ก ๋ฐ์ subject()๋ ๋ฉ์ผ ์ ๋ชฉ์, to()๋ฉ์๋๋ก ์์ ์๋ฅผ ์ ์ ํ๋ค
use()
ํค์๋๋ ํด๋ก์ ๋ฐ์ ์๋ ๋ฐ์ดํฐ๋ฅผ ํด๋ก์ ์ปจํ
์คํธ์ ๋ฐ์ธ๋ฉํ๋ ๋ฌธ๋ฒ์ผ๋ก ์ด ํค์๋๊ฐ ์์ผ๋ฉด $article
๋ณ์๋ฅผ ํด๋ก์ ์์์ ์ธ ์ ์๋ค.
๋ฉ์ผ๊ฑด
smtp๋ ๋น๊ต์ ๋๋ฆฐ ํ๋กํ ์ฝ๋ก ๋ฉ์ผ ๋ฐ์ก์ ํ ๋ ๋๋ฆด ์๊ฐ ์๋๋ฐ ๋ฉ์ผ๊ฑด์ ์ด์ฉํ๋ฉด http๋ก ๋ฉ์ผ ๋ฐ์ก์ ์์ฒญํ๊ณ ๊ทธ ์ดํ์ smtp๋ก ๋ณด๋ด์ฃผ๋ ๋ฐฉ์์ด๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ์์ ํ๋ฉด ์๋ต์๊ฐ์ ์ค์ผ ์ ์๋ค. ์ด๋ฅผ ์ํด์๋ ์ฐ๋ฆฌ ์๋ฒ๊ฐ ๋ฉ์ผ๊ฑด ์๋ฒ์ http๋ก ํต์ ํ ์ ์์ด์ผ ํ๋ค. compser require "guzzlehttp/guzzle:~5.3|6.0"
์ผ๋ก http ํด๋ผ์ด์ธํธ ์ปดํฌ๋ํธ๋ฅผ ์ค์น ํด์ฃผ๋ฉด ๋๋ค.
๋ฉ์ผ๊ฑด์ ํ์๊ฐ์ ํ๊ณ .envํ์ผ์ ์๋์ ๊ฐ์ด ์์ ํ์. random number๋ ๋ฉ์ผ๊ฑด์ ๋ก๊ทธ์ธํ๋ฉด ๋์๋ณด๋์ ํ์๋์ด์๋ค.
์ถ๊ฐ ๋ฉ์๋
$message->to(array $address) : ๋ฐ๋ ์ฌ๋์ด ์ฌ๋ฌ๋ช ์ผ๋๋ ๋ฐฐ์ด์ ์ด์ฉ
$message->from(string $addr, string $name = null) : ์ ์ญ์ผ๋ก ์ค์ ํ ๋ณด๋ด๋ ์ฌ๋์ ์ด๋ฉ์ผ ์ฃผ์์ ์ด๋ฆ์ ์ค๋ฒ๋ผ์ด๋ ํ ์ ์๋ค.
$message->cc(string $addr, string $name=null) : ์ฐธ์กฐ. ์ฌ๋ฌ๋ช ์ผ ๋๋ ์ฒด์ธ ์ด์ฉ
$message->bcc(string $addr, string $name=null) : ์จ์ ์ฐธ์กฐ. ์ฌ๋ฌ๋ช ์ผ ๋๋ ์ฒด์ธ ์ด์ฉ
$massage->attach(string $file, array $options = []) : ํ์ผ ์ฒจ๋ถ. ['as' => 'ํ์ผ ๋ณ์นญ', 'mime' => 'application/zip']๊ณผ ๊ฐ์ด ๋๋ฒ์งธ ์ธ์์ ์ต์ ์ ์ค ์ ์๋ค.
$message->attach(storage_path('elephant.png')) :
storage_path()
๋ฉ์๋๋ storage ๋๋ ํ ๋ฆฌ ์๋์ ์๋ ํ์ผ์ ์ ๋ ๊ฒฝ๋ก๋ฅผ ๋ฐํํ๋ ๋์ฐ๋ฏธ ํจ์์ด๋ค.{{ $message->embed(storage_path('elephant.png')) }} : view์์ ์ด๋ฏธ์ง๋ฅผ ๋ณธ๋ฌธ์ ์ถ๊ฐํ ๋๋
embed(string $file)
๋ฉ์๋๋ฅผ ์ด์ฉํ๋ฉด ๋๋ค.
Last updated