PHP ๊ฐ์ฒด์งํฅ, ๋ด์ฅ ํด๋์ค, PSR, Composer, MVC(Model, View, Controller)๊น์ง ๋ชจ๋ PHP๋ฅผ ์ตํ๊ธฐ ์ํ ๊ทผ๊ฐ์ ์ด์ผ๊ธฐํฉ๋๋ค.
PHP ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ
PHP ๋ด์ฅ ํด๋์ค์ ์ธํฐํ์ด์ค
PHP ๋ง์ดํฌ๋ก ํ๋ ์์ํฌ ๊ฐ๋ฐ
PHP ํจํค์ง ๋งค๋์
MVC(Model, View, Controller)
์ด ๊ฐ์ข๋ ใPHP 7+ ํ๋ก๊ทธ๋๋ฐใ ๊ฐ์ข์ ํ์ ๊ฐ์ข์ ๋๋ค. ๋ค๋ง ์ด์ ๊ฐ์ข๋ฅผ ๋ฃ์ง ์๋๋ผ๋ ๊ธฐ์ด์ง์์ด ์๋ค๋ฉด ๋ฐ๋ผ์ฌ ์ ์์ต๋๋ค.
๊ฐ์ฒด์งํฅ, ๋ด์ฅ ํด๋์ค, PSR, Composer, MVC(Model, View, Controller)๊น์ง ๋ชจ๋ PHP๋ฅผ ์ตํ๊ธฐ ์ํ ๊ทผ๊ฐ์ ์ด์ผ๊ธฐํฉ๋๋ค. ๊ณผ์ ์ ๋ชจ๋ ๋ง์น๊ฒ ๋๋ฉด ๋ผ๋ผ๋ฒจ(Laravel)ํ๋ ์์ํฌ์ ์์ํ ์ค๋น๊ฐ ๋์๋ค๊ณ ํ ์ ์์ต๋๋ค.
PHP ๊ฐ์ฒด์งํฅ ๋ฌธ๋ฒ์ ์ตํ๋๋ค. ํด๋์ค์ ๊ฐ์ฒด ๊ธฐ์ด๋ถํฐ ์ ๋ค๋ ์ดํฐ, ์ฐธ์กฐ ํํ ๋ฑ ๋ชจ๋ PHP์ ์ถ๊ฐ๋ ๋ค์ํ ๊ธฐ๋ฅ์ ๊ณต๋ถํฉ๋๋ค. ๋ํ ์์๊ณผ ๋ฌธ๋งฅ ํค์๋ ๋ฑ PHP ์ธ์ด๋ง์ด ๊ฐ์ง ํน์ง์ ๋ํด์๋ ์ด์ผ๊ธฐํ๊ฒ ๋ฉ๋๋ค.
ใPHP 7+ ํ๋ก๊ทธ๋๋ฐใ ๊ฐ์ข์์ ์ด์ผ๊ธฐํ์ง ์์ ๋ด์ฉ์ธ Classes, DateTime, Directory, Reflection, SPL ๋ฑ PHP ์์ ์ฌ์ฉํ๋ ๋ด์ฅ ํด๋์ค์ ๋ํด ์์๋ด ๋๋ค. ์ถ๊ฐ์ ์ผ๋ก Iterator, ArrayAccess ์ ๊ฐ์ ์ธํฐํ์ด์ค์ ๋ํด์๋ ์์๋ด ๋๋ค. ๋ฌผ๋ก ์ด ๋ด์ฉ์ด ๊ธธ๋ค๊ณ ์๊ฐ๋๋ค๋ฉด ๋์ค์ ๋ณด์๋ ์๊ด์์ต๋๋ค.
PSR(PHP Standard Recommendation)์ ๋ํด์ ์์๋ด ๋๋ค. PHP ํ๋ก๊ทธ๋๋ฐ์ ํ ๋ PHP-FIG ์์ ์ด์ผ๊ธฐํ๊ณ ์๋ ๊ถ์ฅ์์ด๋ฉฐ ์ฝ๋ฉ ์คํ์ผ(PSR-1, PSR-12), ์คํ ๋ก๋(PSR-4) ๋ฑ ์ฐ๋ฆฌ๊ฐ ์์์ผ ํ ๋ด์ฉ๋ค์ ํฌํจํ๊ณ ์์ต๋๋ค. ๋ฐ๋ผ์ ์ด์๋ํด ๋ ผ์ํด๋ด ๋๋ค.
์นํ์ด์ง์ ์ฌ์ฉํ๋ ์ฝ๋๋ฅผ ์ ๋ถ ์ฐ๋ฆฌ๊ฐ ๋ง๋ค์ด์ผ ํ ๊น์? ๊ทธ๋ ์ง ์์ต๋๋ค. ์ธ์์๋ ๋ค์ํ ์ฌ๋๋ค์ด ๋ง๋ค์ด๋์ ๋ฉ์ง ์คํ์์ค ํจํค์ง๊ฐ ๋ง์ต๋๋ค. ์ฐ๋ฆฌ๋ ์ด๊ฒ๋ค์ ์ ๊ทน์ ์ผ๋ก ์ฌ์ฉํด์ผ๊ฒ ์ฃ .
ํจํค์ง ๋งค๋์ , ๊ทธ๊ฒ์ด ๋ฐ๋ก Composer ์ ๋๋ค. ์ด๊ฒ์ ์ฌ์ฉํ๋ฉด ๋ค์ํ ์ฌ์ฉ์๊ฐ ๋ง๋ ํจํค์ง๋ฅผ ์ฌ์ฉํ ์ ์๊ณ , Packagist ๋ ์ง์คํธ๋ฆฌ๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ํด๋น ์์ ์์๋ PHP ํจํค์ง ์ค ํ๋์ธ Whoops ๋ฅผ ์ฌ์ฉํ์ฌ ํจํค์ง๋ฅผ ์ฌ์ฉํ์ ๋์ ์ด์ ์ ๋๊ปด๋ด ๋๋ค.
ํ๋ ์์ํฌ๋ ์ฌ๋ฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํฌํจํ๊ณ , ๊ฐ๋ฐ์๊ฐ ํธํ ์ฌ์ฉํ ์ ์๋๋ก ํ๋ก์ ํธ ํ ํ๋ฆฟ์ ์ ๊ณตํ๊ฑฐ๋ ํ์ ์ ๊ณตํ๊ณค ํ๋๋ฐ, ์ฐ๋ฆฌ๋ MVC(Model, View, Controller)์ ์ค์ ์ ๋ง์ถ์ด ์ฌ์ฉํ ์ ์๋๋ก ๊ตฌ์ฑํด๋ด ๋๋ค. ๋ฌผ๋ก ์ฌ๊ธฐ์๋ ๋ค๋ฅธ ์ฌ๋์ด ๋ง๋ ํจํค์ง๋ ์ผ์ฒด ์ฌ์ฉํ์ง ์์ต๋๋ค. ์ฌ๊ธฐ์ ๋ง๋ ํจํค์ง๋ ์งํ์ ๋์ฌ ๊ฒ์ํ ํ๋ก์ ํธ์์ Composer ๋ฅผ ์ฌ์ฉํ์ฌ ๋ค์ด ๋ฐ๊ณ ์ง์ ์ฌ์ฉํฉ๋๋ค.
MVC(Model, View, Controller), ๊ฐ์ฒด์งํฅ์ ์ ๊ทน์ ์ผ๋ก ์ฌ์ฉํ์ฌ ๊ฒ์ํ ํ๋ก์ ํธ๋ฅผ ํ๋ฐ๊ฟํฉ๋๋ค. ๋ํ '๋๋ง์ ํ๋ ์์ํฌ ๋ง๋ค๊ธฐ' ์์ ๋ง๋ ํจํค์ง๋ฅผ ๋ค์ด๋ฐ๊ณ ์ง์ ์ ์ฉ์์ผ๋ณด๋ ๊ณผ์ ์ ํด๋ณผ ๊ฒ์ ๋๋ค. ํ๋, ์ฝ๋๋ index.php ๋ถํฐ ์ฒ์๋ถํฐ ์์ฑํ ๊ฒ์ด๋ฉฐ ์ด์ ๊ฐ์ข๋ฅผ ๋ฃ์ง ์์๋๋ผ๋ ๋ฐ๋ผ์ฌ ์ ์๋๋ก ๊ธฐ์กด์ ์ฝ๋๋ ์ฌ์ฉํ์ง ์๊ธฐ๋ก ํ์์ต๋๋ค.
๊ฐ๋ฐ ์๋ฒ๋ ๋นํธ์ธ ๋ด์ฅ ์๋ฒ๋ฅผ ์ฌ์ฉํ์ง๋ง, ํ์์ ๋ฐ๋ผ WAMP์ ๊ฐ์ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๊ฑฐ๋, PHP ๋งค๋ด์ผ์ ์ฐธ๊ณ ํด์ฃผ์ธ์.
์ด ๊ฐ์ข์ ์์ ์ฝ๋๋ ๊นํ๋ธ ๋ ํฌ์งํ ๋ฆฌ์์ ์ฐพ์ ์ ์์ต๋๋ค. ํ๋ก ํธ์๋์ UIkit CSS Framework ์ ํ ์คํธ ์๋ํฐ๋ก CKEditor 5 ๋ฅผ ์ฌ์ฉํฉ๋๋ค.
2023๋
07์ 24์ผ๋ถํฐ ๊ฐ์ธ์ ์ธ ์ฌ์ ๋ก ๊ฐ์์ ๋ํ ์ง๋ฌธ์ ๋ฐ์ง ์๊ณ ์์ต๋๋ค. ํ์ง๋ง ์ด๋ฏธ ์๋
๊ฐ ์์ฑ๋ ์ง์์๋ต์ ์ดํด๋ณผ ์ ์์ต๋๋ค. ์ปค๋ฎค๋ํฐ์์ ์ง๋ฌธ์ ์ฐพ์๋ณด์ค ๊ฒ์ ๊ถํฉ๋๋ค.
ํ์ต ๋์์
๋๊ตฌ์ผ๊น์?
PHP 7+ ํ๋ก๊ทธ๋๋ฐ: ๋ฆฌ๋ถํธ ์๊ฐ์
PHP ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ์ ์์๋ณด๊ณ ์ถ์ผ์ ๋ถ
๋ชจ๋ PHP ํ๋ก๊ทธ๋๋ฐ์ ํด๋ณด๊ณ ์ถ์ผ์ ๋ถ
์ ์ ์ง์,
ํ์ํ ๊น์?
PHP 7+ ํ๋ก๊ทธ๋๋ฐ: ๋ฆฌ๋ถํธ
1,701
๋ช
์๊ฐ์
68
๊ฐ
์๊ฐํ
187
๊ฐ
๋ต๋ณ
4.2
์
๊ฐ์ ํ์
3
๊ฐ
๊ฐ์
ใ์ด์ธ ๋ผ๋ผ๋ฒจใ ์ ์
ใPHP 7+ ํ๋ก๊ทธ๋๋ฐใใPHP 7+ ํ๋ก๊ทธ๋๋ฐ: ๊ฐ์ฒด์งํฅใใPHP 8, ์๋ก์ด ๊ธฐ๋ฅ ์์๋ณด๊ธฐใ ๊ฐ์
ํฐ์คํ ๋ฆฌ ํ๋ ์์ํฌ ใํฐ๋๋ฆฌใ, ํฐ์คํ ๋ฆฌ ์คํจ ใhELLOใ ๋ฉ์ธํ ์ด๋
์ ์ฒด
41๊ฐ โ (10์๊ฐ 10๋ถ)