PHP 7+ ํ๋ก๊ทธ๋๋ฐ: ๊ฐ์ฒด์งํฅ
PHP ๊ฐ์ฒด์งํฅ, ๋ด์ฅ ํด๋์ค, PSR, Composer, MVC(Model, View, Controller)๊น์ง ๋ชจ๋ PHP๋ฅผ ์ตํ๊ธฐ ์ํ ๊ทผ๊ฐ์ ์ด์ผ๊ธฐํฉ๋๋ค.
์๊ฐ์ 369๋ช
๋์ด๋ ์ด๊ธ
์๊ฐ๊ธฐํ ๋ฌด์ ํ
์๋ ํ์ธ์. ์ ์์ฐ์ ๋๋ค. ์์ฑํ AI ๊ฐ์ฌ๋ก ์ปค๋ฆฌ์ด๋ฅผ ์ ํํ๋ฉด์, ์ด ์ฐธ์ ์ถ๊ฐ์ ๋ชฉํ๋ก ๊ธ์ ๋ค์ ์จ๋ณด์๋ ์๊ฐ์ด ๋ค์์ต๋๋ค. ๋ค๋ง ์น์ ๋จผ์ ๊ณต๊ฐํฉ๋๋ค. ์ฐ๊ธฐ ์์ํ ์ฃผ์ ๋ '๋น์ ๊ณต์๋ฅผ ์ํ ์ฑGPT 101' ๋ผ๋ ์ฃผ์ ๋ก, ๋ธ๋ฐ์น์ ์์ฑ๋ฉ๋๋ค. ์์ ์ ์ธ ์ด์ผ๊ธฐ๋ ์๋ ๋ฟ๋๋ฌ, ์ผ๋ฐ ๋์ค์ ๋์์ผ๋ก ์์ฑํ ๊ธ์ด๊ธฐ ๋๋ฌธ์ ๊ธฐ์ ์ ์ผ๋ก ๊น์ด์๋ ๋ด์ฉ์ ์ด์ผ๊ธฐํ์ง ์์ต๋๋ค.
'๋น์ ๊ณต์๋ฅผ ์ํ ์ฑGPT 101'์ ๋จ์ํ๊ฒ ์ฑGPT ์ฌ์ฉ๋ฒ์ ์ด์ผ๊ธฐํ๋ ๊ฒ์ด ์๋๋ผ, ์์ฑํ AI๋ฅผ ํ์ฉํ๊ธฐ ์ํด ์์์ผ ํ๋ ๊ธฐ์ด๋ฅผ ๋ํ์ ์ธ ์์ฑํ AI ์๋น์ค์ธ ์ฑGPT๋ฅผ ์ฌ์ฉํ์ฌ ํ์ด๋ ๋๋ค. ๋ฌผ๊ณ ๊ธฐ๋ฅผ ์ก์์ฃผ๊ธฐ๋ณด๋ค๋ ๋ฌผ๊ณ ๊ธฐ๋ฅผ ์ก๋๋ฒ์ ์๋ ค์ค๋๋ค.
์ฑGPT๋ฅผ ์ฌ์ฉํ๋ ํ์ฉ๋ฒ์ ๊ฐ๋จํ ๊ธ์ฐ๊ธฐ๋ถํฐ ์์ํด์ ๊ธฐํ, ๋ง์ผํ ๋ฑ ๋๋ฌด๋๋ ๋ง๊ณ , ์ง๋ฌด๋ง๋ค ๋ค๋ฆ ๋๋ค. ์ด ๊ธ๋ค์ '์ด๋ฉ์ผ ์ฐ๊ธฐ', 'ํต๊ณ ๋ถ์ํ๊ธฐ ๊ฐ์' ๋จ์ํ '์ฌ๋ก'๋ง์ ์ด์ผ๊ธฐ ํ์ง ์์ต๋๋ค. ์์ฑํ AI์ '๊ธฐ๋ณธ'์ ์ด์ผ๊ธฐํจ์ผ๋ก์จ ์ฑGPT๋ฅผ ์์ ๋กญ๊ฒ ๊ตฌ์ฌํ๋ฉฐ ์ค๋ฌด์์ ํ์ฉํ ์ ์๋๋ก ๋ผ๋๋ฅผ ์์ต๋๋ค.
์๋ ํ์ธ์. ์ ์์ฐ์ ๋๋ค. ๐
์ ๊ฐ ์ด ์ฒซ ๋ฒ์งธ ๊ฐ๋ฐ ์์ ์ธ ใ์ด์ธ ๋ผ๋ผ๋ฒจใ์ ์ถ๊ฐํ๊ฒ ๋์์ต๋๋ค. ์ถ๊ฐ ์์ ์ผ์ 2023๋ 4์ 3์ผ์ ๋๋ค. EBOOK ๋ ํจ๊ป ์ถ๊ฐ๋ ์์ ์ ๋๋ค. ์ด ์ฑ ์ ์์ฑ๋ ์์ ์ฝ๋ ๋ํ ๊นํ๋ธ์ ์์ฑ๋์ด ์์ผ๋ ํ์ธํ์ค ์ ์์ต๋๋ค. ์ง์์๋ต์ ๊ฒฝ์ฐ ๊นํ๋ธ ๋์ค์ปค์ ์ ๋จ๊ฒจ์ฃผ์๋ฉด ๊ฐ๋ฅํํ ๋ต๋ณํ๋๋ก ํ๊ฒ ์ต๋๋ค.
ใ์ด์ธ ๋ผ๋ผ๋ฒจใ์ 2023๋ 2์์ ๋ฆด๋ฆฌ์ฆ๋ ๋ผ๋ผ๋ฒจ์ ์ต์ ๋ฒ์ ์ธ 10.x ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์์ฑ๋ ๋ผ๋ผ๋ฒจ ์์ ์ ๋๋ค. ์ฑ ์ ๊ตฌ์ฑ์ ์ค์ ํ๋ก์ ํธ๋ฅผ ํตํด ํ์์ ๋ฐ๋ผ ๊ฐ๋ ์ ์ตํ๋๊ฐ๋ ๋ฐฉ์์ผ๋ก ๊ตฌ์ฑ๋์์ต๋๋ค. ์ค์ ํ๋ก์ ํธ์์ ๋ผ๋ผ๋ฒจ์ ๊ธฐ๋ฅ์ด ์ด๋ป๊ฒ ์ฐ์ด๋์ง ๋๊ปด๊ฐ๋ฉฐ ํ์ตํ ์ ์์ ๊ฒ์ ๋๋ค. ์ด๋ฌํ ๋ฐฉ์์ ์ค์ ๋ก ์ค๋ฌด์์ ๋ผ๋ผ๋ฒจ์ ์ฌ์ฉํ ๋ ์ฒ์ ์ฌ์ฉํ๋ ๊ธฐ์ ์ ๋ํ ๊ฑฐ๋ถ๊ฐ์ ์ํ์์ผ ์ค ๊ฒ์ ๋๋ค.
๋์๋ ์๋ ๋ผ๋ผ๋ฒจ์ ์ฒ์ ์ ํ๋ ๋ ์, ๋ํ PHP ๋ฅผ ์ฌ์ฉํ๋ ๊ธฐ์กด์ ๊ฐ๋ฐ์๋ถ๋ค ์ค์ ๊ทธ๋๋ณด๋ ๋ฐ ์๋ํ๋ ์ค์ ๊ฐ์ CMS(Content Management System)์์ ๋ฒ์ด๋ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ์ฌ ํ์ธต ๋ ๋์ ์๋น์ค๋ฅผ ๊ฐ๋ฐํ๊ณ ์ฑ์ฅ์ ๋ฐ๋ผ๋ ๋ถ๋ค์ ๋์์ผ๋ก ํ๊ณ ์์ต๋๋ค. ๋ฐ๋ผ์ ์ด ์ฑ ์ ๋ณด๊ธฐ ์ํด์๋ ์ ํ์ง์์ผ๋ก PHP ๋ฅผ ์ฌ์ฉํด๋ณธ ์ ๋ฐ์ ์ธ ๊ฒฝํ์ด ํ์ํฉ๋๋ค. ๋๋ ์ธํ๋ฐ์์ ์ ๊ฐ ๊ฐ์คํ PHP ๊ฐ์์ธ ใPHP 7+ ํ๋ก๊ทธ๋๋ฐใใPHP 7+ ํ๋ก๊ทธ๋๋ฐ: ๊ฐ์ฒด์งํฅใ ๊ฐ์๋ฅผ ๋ค์ผ์ ๋ถ๋ค์ด๋ผ๋ฉด ๋ฌด๋ฆฌ์์ด ๋ฐ๋ผ์ค์ค ์ ์์ต๋๋ค.
์ด ์ฑ ์ด ์ต์ ๋ฒ์ ์ ๋์๊ณผ ๋๋ถ์ด ๋ค๋ฅธ ๋ผ๋ผ๋ฒจ ์์ ๊ณผ ๊ฐ์ง๋ ์ฐจ๋ณ์ ์ ๋ฐ๋ก ํ ์คํธ์ ๋๋ค. ํ๋ก์ ํธ์ ์์ฑ๋ ๋ชจ๋ ์ฝ๋์ ๋ํ ํ ์คํธ๋ฅผ ์์ฑํ๊ณ ์คํํฉ๋๋ค. ๋จ์ํ๊ฒ ๋ผ๋ผ๋ฒจ์์ ํ ์คํธ๋ฅผ ์์ฑํ๋ ๋ฐฉ๋ฒ๋ง์ ์ด์ผ๊ธฐ ํ์ง ์๊ณ , ํ๋ก์ ํธ์ ์์ฑ๋ ์ค์ ์ฝ๋์ ๋ํด ํ ์คํธ๋ฅผ ์์ฑํฉ๋๋ค.
์ด ์ฑ ์ ๊ต์ฌ๋ก ํ์ฌ ์ถํ ์ธํ๋ฐ์ ๋ผ๋ผ๋ฒจ ๊ฐ์๋ฅผ ์ ์ํ ์์ ์ ๋๋ค. ์ ๋ฃ ๊ฐ์๊ฒ ์ง๋ง, ์ฑ ์์๋ ์ด์ผ๊ธฐํ์ง ๋ชปํ๋ ๋ถ๋ถ์ด๋ ๊ธ์ด ์๋ ๋ง๋ก ํํํ์ ๋ ์กฐ๊ธ ๋ ์์ํ ๋ถ๋ถ์ด ์๋ ๋งํผ, ์ฑ ๋ณด๋ค๋ ์กฐ๊ธ ๋ ์์ธํ๊ฒ ์ด์ผ๊ธฐํ๊ฒ ๋ ๊ฒ์ ๋๋ค. ๊ทธ๋ฌ๋, ์ธํฐ๋ท ๊ฐ์์ ์ฑ ์ ์๋ก ๋ค๋ฅธ ํ์ต ๋ฐฉ๋ฒ์ด๋ฏ๋ก ๊ฐ์ธ๋ง๋ค ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๋ ๋ค ํ์ ๋ ๋๊ณ ์ด๋ ํ ์ชฝ๋ง์ ํ์ ๋ ํฌ๊ฒ ์ง์ฅ์ ์์ ๊ฒ์ ๋๋ค. ์ฑ ์ด ๋จผ์ ์ถ๊ฐ๋๊ณ ๊ฐ์๋ ๋์ธ๋ฌ ์ดํ์ ๋์ฌ ์์ ์ด๋ฏ๋ก ์ฑ ์ผ๋ก ์์ต์ ํ ๋ค, ์ดํ์ ๊ฐ์๋ฅผ ๋ฃ๊ณ ์ฅ๊ธฐ๊ธฐ์ต์ผ๋ก ์ง์์ ์ด์ ์ํค๋ ๊ฒ๋ ์ข์ ๋ฐฉ๋ฒ์ด๋ผ๊ณ ๋ณผ ์ ์์ต๋๋ค. ์ฑ ๊ณผ ๊ฐ์๋ ์๋ก ์ํธ๋ณด์์ ์ธ ์ญํ ์ ํ ๊ฒ์ ๋๋ค.
ใ์ด์ธ ๋ผ๋ผ๋ฒจใ์ ์ฐ๊ธฐ ์์ํ์ง ๋ฒ์จ 2๋ ์ด ๋์์ต๋๋ค. ์์ ๋๋ก๋ผ๋ฉด ์๋ ์ ์ถ๊ฐ๋์์ด์ผ ํ๋๋ฐ, ์ฝ๋์ ํ์ง์ด๋ ์์ฑ๋์ ์ ๊ฒฝ์ฐ๋ค๋ณด๋ ๋ฆ์ด์ง ๊ฐ์ด ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ์ ์ฑ ์ ๊ธฐ๋ค๋ ค์ฃผ์ จ๋ ๋ถ๋ค๋ ์์ผ์ จ๋ค๋ ๊ฒ์ ์์ง ์์ต๋๋ค. ๋๋์ด ๊ทธ ๊ธฐ๋์ ๋ถ์ํ ์ ์๋ ๋๊ฐ ์๋ค์ ๐
์๋ ํ์ธ์. ์ค๋๋ง์ ์์์์ผ๋ก ์ฐพ์๋ต๊ฒ ๋์์ต๋๋ค.
๋ผ๋ผ๋ฒจ ๊ฐ์ ์์์ ์๋๋ผ์ ๊ธฐ๋ํ์ จ๋ ๊ฒ์ด ์๋์ค ์ ์์ต๋๋ค๋ง, ์ ๊ฐ ์ด ๋ผ๋ผ๋ฒจ ์ฑ ์ด ์ถ๊ฐ๋ ์์์ด๋ผ๋ ๊ฒ์ ์ ํ๊ณ ์ ์ ๊ฒ ๋์์ต๋๋ค. :)
์ฑ ์ด๋ฆ๊ณผ ์ถํ ์์ ์ผ์ ์์ง ์์ ํ๊ฒ ์ ํด์ง์ง ์์์ง๋ง, ํ์ฌ ์๊ณ ๋ง๊ฐ์ผ๋ก ์ถํ์ฌ ํธ์ง ์ค์ ์์ต๋๋ค. ์์ ์ฝ๋์ ๋ชฉ์ฐจ ์ ๋๋ ๊นํ๋ธ์ ๊ณต๊ฐ๋ฅผ ํด๋์์ผ๋ ๋ฏธ๋ฆฌ ์ดํด๋ณด์ค ์ ์์ต๋๋ค.์ฑ ๊ณผ ๊ฐ์๋ ํ ๊ธฐ์ค ์ต์ ๋ฒ์ ์ธ PHP 8.1/Laravel 9.x ๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ์๋ฉ๋๋ค.
https://github.com/php-courses-inflearn/laravel
๊ทธ๋์ ๋ผ๋ผ๋ฒจ ๊ฐ์๋ ์ธ์ ๋์ค๋๋? ๊ถ๊ธํ์ ๋ถ๋ค๋ ์์ผ๋ฆฌ๋ผ ์๊ฐํฉ๋๋ค. 10์ ์ค์ ์ฆ์๋ถํฐ ์์ ์ ๋ฐํ์ผ๋ก ์ ์ ๋ ์์ ์ด๋๋๋ค. ์๊ฐ๋ณด๋ค ์ ์์ด ๋ฆ์ด์ ธ์ ์ฃ์กํฉ๋๋ค ์ฌ๋ฌ๋ถ ใ ใ
๊ฐ์ฌํฉ๋๋ค!<PHP 7+ ํ๋ก๊ทธ๋๋ฐ>, <PHP 7+ ํ๋ก๊ทธ๋๋ฐ: ๊ฐ์ฒด์งํฅ> ๊ฐ์์ ๊ฐ๋ฐํ๊ฒฝ์ ์ค์ ํ๋ ๊ฐ์(00 - ํ๊ฒฝ(Environment))๊ฐ ์ถ๊ฐ๋์์์ ์๋ฆฝ๋๋ค. ๊ธฐ์กด์๋ ๊ฐ๋ฐํ๊ฒฝ ์ธํ ์ ๋ํ ๋ฌธ์๊ฐ ๋ค์ ์์ด์ ์ด ๊ธฐํ์ ์ถ๊ฐํ๊ฒ ๋์์ต๋๋ค. :)
์๋ ํ์ธ์ :)
PHP 8 ์ด 5๋ ๋ง์ ๋ํ๋ฌ์ต๋๋ค. ๋ฒ ํ ๋ฒ์ ์ด์ง๋ง, ๊ธฐ๋ฅ์ ์ด๋์ ๋ ์ ์๋์์ฃ .
๊ทธ ๊ธฐ๋ ์ผ๋ก PHP 8์ ์๋ก์ด ๊ธฐ๋ฅ๋ค์ ์์๋ณด๋ ๊ฐ์ข๋ฅผ ์ค๋นํ์ต๋๋ค.๊ณต์ง์ ๋๋ค!
์๋ ํ์ธ์.
๋ณด์๋ ๊ฒ์ฒ๋ผ, ํด๋น ๊ฐ์์ ์๋ฆฌ๊ฐ ์๋ค๋ ๋ฌธ์ ์ ์ด ๋ฐ์ํ์ฌ ์ด๋ฅผ ํด๊ฒฐํ๊ณ ์
๋ชจ๋ ์์์ ๋ณผ๋ฅจ์ ํค์ฐ๊ณ ๋ฆฌ๋ ๋๋ง ์์ ์ ๊ฑฐ์ณ ์ฌ์ ๋ก๋ ํ์์ต๋๋ค.๋ค๋ฅธ ๊ฐ์๋ ๊ทธ๋ ๊ฒ ๋๊ฒ ์ง๋ง,
์ผ๋จ์ ์ด ๊ฐ์๊ฐ ๊ฐ์ฅ ๋จผ์ ์งํ๋์์ต๋๋ค.๋ถํธ์ ๋๋ ค ์ฃ์กํฉ๋๋ค :(
์์์ ๋ค๋ฅธ ๋ฌธ์ ๋ ์ด์์ด ์๊ธด๊ฒฝ์ฐ,
pronist@naver.com ์ด๋ฉ์ผ๋ก ์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค.๋๋ฆ ์์๋๋ฉด ์ ์ฉํ ํจํค์ง๋ค์ ์ ์ด๋ณด๊ณ ์ ํฉ๋๋ค. ๋ฌผ๋ก , PHP ์์ ์ ๊ณตํ๋ ๋ค์ํ Extension ๋ค์ด ์์ง๋ง, ์ด๊ฒ๋ค์ ์ง์ ์ฌ์ฉํ๊ธฐ ๋ณด๋ค๋ ๋ค์ํ ์ฌ์ฉ์๊ฐ ๋ง๋ ํจํค์ง๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ ๋ฉ์ง ์์ฐ์ฑ์ ๋ถ์ฌํฉ๋๋ค. ์ด๊ฒ์ Composer ์ ๊ด๋ จ๋ ๋ด์ฉ์ ์๊ฐํ ๋ค์ ๋ณด๋ ๊ฒ์ด ์ข์ต๋๋ค. ํ์ฅ์ ์ข ์์ฑ์ผ๋ก ๊ฐ๋ ํจํค์ง๋ ๋ฌผ๋ก ์์ต๋๋ค.
- guzzlehttp/guzzle - HTTP Client ์ ๋๋ค. curl ๋ณด๋จ ์ธ๋งํ๊ฒ ์ฃ .
- filp/whoops - ์๋ฌ ํ์ด์ง๋ฅผ ์์๊ฒ ๊พธ๋ฉฐ์ค๋๋ค.
- maximebf/debugbar - ๋๋ฒ๊ทธ ๋ฐ๋ฅผ ํ์ํด์ค๋๋ค. ๊ฐ๋ฐ๋์ค์ ์ฌ์ฉํฉ๋๋ค.
- xdebug/xdebug - PHP ์์ ํ์์ ์ผ๋ก ์ฌ์ฉํด์ผํ ๋๋ฒ๊น ๋๊ตฌ์ ๋๋ค. ์ค๋๋๊ธด ํ์ง๋ง, ์์ผ๋ฉด ์ญ์ญํฉ๋๋ค.
- Mustache.php - PHP ํ ํ๋ฆฟ์ ๋๋ค. ๊ฐ์์์ ํ์ง๋ ์์์ง๋ง, ํ๋ ์์ํฌ์ ํฌํจ์ํค๋ฉด ์ข์ ์๋ ์์ต๋๋ค. ๋ผ๋ผ๋ฒจ์์ ํ์ํ์ง ์์ต๋๋ค. Blade ๋ฅผ ์ฌ์ฉํ๋๊น์.
- swiftmailer/swiftmailer - ๋ฉ์ผ์ ๋ณด๋ด๊ธฐ ์ํด ์ฌ์ฉํฉ๋๋ค. php ์ ๋ด๋ถํจ์ mail() ๊ฐ์ ๊ฒ์ ๊ฑฐ๋ค๋ ๋ ๋ณผ ํ์๊ฐ ์์ต๋๋ค.
- monolog/monolog - ์ด๊ฒ๋ณด๋ค ์ธ๋งํ ๋ก๊ฑฐ๋ ์์์ง๋ ๋ชจ๋ฆ ๋๋ค. ์ ์ด๋ PHP ์ธ๊ณ์์ ๋ง์ด์ฃ .
- gabordemooij/RedBeanPHP - ์์ฃผ ๊ฐ๋จํ๊ฒ ์ฌ์ฉํ ์ ์๋ ORM ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ ๋๋ค. ์ฌํ ์ด์ฆ ๋ฒ ์คํธ.
- lstrojny/functional-php - ํจ์ํ PHP.
- chrisboultom/php-resque - Redis ๊ธฐ๋ฐ ํ์ ๋๋ค.
- sebastianbergmann/phpunit - ์ ๋ ํ ์คํธ์ ์ ๋ ๊ฐ์์ ๋๋ค. ํ ์คํธ๋ฅผ ์์ฑํ๋ค๋ฉด ๊ฑฐ์ ํ์์ ์ผ๋ก ์ฌ์ฉํฉ๋๋ค.
๋์ฑ ๋ง์ ํจํค์ง๋ฅผ ์ฐพ์๋ณด๊ณ ์ถ์ผ์ ๊ฐ์? ๊ทธ๋ ๋ค๋ฉด ์๋์ ๋ ํฌ์งํ ๋ฆฌ๋ฅผ ์ฐธ๊ณ ํฉ๋๋ค.
- ziadoz/awesome-php - ์ด๊ฒ์ ํจํค์ง๊ฐ ์๋๋๋ค. ์์๋๋ฉด ์ ์ฉํ ๋ ํฌ์งํ ๋ฆฌ๋ค์ด ๋ชจ์ฌ์์ฃ . ๋ค๋ง ๋๋ฌด ๋ง์์ ๋ฌด์์ ์ฌ์ฉํ๋ฉด ์ข์์ง ๋ชจ๋ฅด๋ ๊ฒฝ์ฐ๋ ์์๊ฒ๋๋ค.
์ฐธ๊ณ ๋ก ์ ๋ ์ ๋ฌธ์ ๋ถ๋ค์ ๊ฒ์์ ์กฐ๊ธ์ด๋๋ง ๋์์ ์ฃผ๊ณ ์ PHP ํธ๋๋ถ์ ๋ธ๋ก๊ทธ์ ์ ๋ฆฌํ์์ต๋๋ค.
https://pronist.tistory.com/36ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ๋ฉด ์์ ๊ฐ์ ๋ด์ฉ๋ค์ด ํฌํจ๋์ด ์์ ์๋ ์์ต๋๋ค. ๊ทธ๋ ๋ค๋ฉด, ํ๋ ์์ํฌ์์ ์ ๊ณตํ๋ ๊ฒ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข๊ฒ ์ฃ !






