[PHP] VS Code๋กœ PHP์‹œ์ž‘ํ•˜๊ธฐ

2023. 6. 30. 13:52ใ†WEB/PHP

๐Ÿ“• Visual Studio Code์—์„œ PHP์ค€๋น„ํ•˜๊ธฐ (Extensions&Shortcut&๊ธฐ์ดˆ๋ฌธ๋ฒ•)

Visual Studio Code๋ฅผ ํ†ตํ•ด php๊ณต๋ถ€๋ฅผ ํ•ด๋ณด๋ ค ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ€์žฅ ์ข‹์€ ์ ์€ Github์™€ ์—ฐ๊ฒฐ์ด ๋œ๋‹ค๋Š”๊ฑฐ์ฃ ๐Ÿ˜Š
Github๊ณต๋ถ€๋„ ํ•  ๊ฒธ Visual Studio Code๋กœ PHP๋ฅผ ์‹œ์ž‘ํ•ด๋ณด๊ธฐ๋กœ ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

๐Ÿ“Œ Extensions

๋จผ์ € PHP๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ํŽธ๋ฆฌํ•˜๊ฒŒ ์ฝ”๋”ฉ์„ ๋„์™€์ฃผ๋Š” extension๋“ค์„ ์„ค์น˜ํ•ด์ค๋‹ˆ๋‹ค.

  • PHP IntelliSense
    • PHP๋ฅผ ์œ„ํ•œ ๊ณ ๊ธ‰ ์ž๋™์™„์„ฑ ๋ฐ ๋ฆฌํŒฉํ† ๋ง ์ง€์›
    • File > Preferences > Settings
"php.validate.executablePath" : "C:/์„ค์น˜ํ•œ ํด๋”/php.exe",
"php.validate.run" : "onType",
"php.validate.enable" : false

  • phpfmt- PHP formatter
    • ์ฝ”๋“œ ์ •๋ ฌ ์ง€์›(HTML ํ˜ผ์šฉ ์‚ฌ์šฉ๋ถˆ๊ฐ€)
    • shortcut : shift + Alt + F
  • Format HTML in PHP
    • HTML์ด ํ˜ผ์šฉ๋œ ํŒŒ์ผ์—์„œ HTML ์˜์—ญ์„ ์„ ํƒ, ๋งˆ์šฐ์Šค ์šฐํด๋ฆญํ•˜๋ฉด ์ฝ”๋“œ์ •๋ ฌ
  • Auto Close Tag
    • HTML ๋‹ซ๊ธฐ ํƒœ๊ทธ๋ฅผ ์ž๋™์œผ๋กœ ์ถ”๊ฐ€
  • Auto Rename Tag
    • HTML ํƒœ๊ทธ๋ช… ์ž๋™์œผ๋กœ ๋ฐ”๊ฟ”์คŒ
  • ESLint
    • JavaScript ๋ฌธ๋ฒ•๊ฒ€์‚ฌ
  • [ ]Prettier
    • ๋Œ€์ค‘์ ์œผ๋กœ ์“ฐ์ด๋Š” Formatter
    • ์ €์žฅํ•  ๋•Œ๋งˆ๋‹ค ์ž๋™์œผ๋กœ ์ฝ”๋“œ๋ฅผ ์ •๋ ฌํ•ด์ค€๋‹ค.
    • beautify์™€ ๋™์‹œ์— ์‚ฌ์šฉํ•˜๋ฉด ์ถฉ๋Œ
    • ๊ธฐ๋ณธ ์„ค์ •ํ•˜๊ธฐ : 'Ctrl + ,' -> formatOnSave ๊ฒ€์ƒ‰ -> check
  • Beautify
    • ์ฝ”๋“œ ๋“ค์—ฌ์“ฐ๊ธฐ๋ฅผ ์ •๋ฆฌํ•ด์ฃผ๋Š” ํ™•์žฅ๊ธฐ๋Šฅ
    • ์„ค์น˜ ํ›„ ํ‚ค ์ง€์ • ํ•„์š”
    • ๊ธฐ๋ณธ ์„ค์ •ํ•˜๊ธฐ : ํŒŒ์ผ>๊ธฐ๋ณธ์„ค์ •>๋ฐ”๋กœ๊ฐ€๊ธฐํ‚ค> HookyQR.beautify ๊ฒ€์ƒ‰ ํ›„ ๋‹จ์ถ•ํ‚ค ์ง€์ •

๐Ÿ“– VS Code ์œ ์šฉํ•œ ๋‹จ์ถ•ํ‚ค

Tool์„ ์ฒ˜์Œ ์‚ฌ์šฉํ•  ๋•Œ ํ•„์ˆ˜์ธ ๋‹จ์ถ•ํ‚ค๋„ ์•Œ์•„๋ด…์‹œ๋‹ค! ๋” ๋งŽ์€ ๋‹จ์ถ•ํ‚ค๋Š” keyboard Shortcut์—์„œ ํ™•์ธํ•˜์‹ค ์ˆ˜ ์žˆ์–ด์š” ๐Ÿ˜Š

  • Window(Mac) : ๋‚ด์šฉ

Ctrl(Cmd) + D : ๋ฐ˜๋ณต๋˜๋Š” ์ฝ”๋“œ๋ฅผ ํ•œ๋ฒˆ์— ์ˆ˜์ •
F2 : ๋ณ€์ˆ˜๋ช…, ํ•จ์ˆ˜๋ช… ํ•œ๋ฒˆ์— ์ˆ˜์ •
Alt(opt) + ↑ ๋˜๋Š” ↓ : ์ฝ”๋“œ ์œ„, ์•„๋ž˜๋กœ ์ด๋™ (์—ฌ๋Ÿฌ ์ค„๋„ ๊ฐ€๋Šฅํ•ด์š”)
Shift + Alt(opt) + ↑ ๋˜๋Š” ↓ : ์ฝ”๋“œ ์œ„, ์•„๋ž˜๋กœ ๋ณต์‚ฌ
Ctrl(Cmd) + / : ์ฃผ์„์ฒ˜๋ฆฌ, ์ฃผ์„ํ•ด์ œ
Alt(opt) + ๋งˆ์šฐ์Šค ํด๋ฆญ : ์—ฌ๋Ÿฌ ๊ณณ์— ์ปค์„œ ๋‘๊ณ  ์ˆ˜์ • (์œ„์น˜ ๋‹ค๋ฅผ ๋•Œ)
Ctrl(Cmd) + Alt(opt) + ↑ ๋˜๋Š” ↓ : ์—ฌ๋Ÿฌ ๊ณณ์— ์ปค์„œ ๋‘๊ณ  ์ˆ˜์ • (์„ธ๋กœ ์œ„์น˜ ๊ฐ™์„ ๋•Œ)
Shift + Alt(opt) + I : ์ฝ”๋“œ์˜ ๋งจ ๋งˆ์ง€๋ง‰์— ์ปค์„œ ๋‘๊ธฐ
Shift + Alt(opt) + ๋งˆ์šฐ์Šค ๋“œ๋ž˜๊ทธ : ์—ฌ๋Ÿฌ ์ค„์„ ์ปค์„œ ์œ„์น˜์— ๋งž์ถ”์–ด ๋ฐ•์Šค ํ˜•ํƒœ๋กœ ์„ ํƒ
Ctrl(Cmd) + Home ๋˜๋Š” End(↑ ๋˜๋Š” ↓) + ๋งˆ์šฐ์Šค ๋“œ๋ž˜๊ทธ : ์ฝ”๋“œ ๋งจ ์œ„/์•„๋ž˜๋กœ ์ด๋™
Ctrl(Cmd) + B : ์‚ฌ์ด๋“œ๋ฐ” ์ˆจ๊น€/ํ‘œ์‹œ


๐Ÿ“• PHP ์‹œ์ž‘ํ•˜๊ธฐ

๊ตฌ์กฐ๋ฅผ ๋จผ์ € ์•Œ์•„๋ณผ๊ฒŒ์š”!
Computer ๋‚ด๋ถ€์—๋Š” ๋จผ์ € ํฌ๊ฒŒ Windows, Mac, Linux๋ผ๋Š” OS, ์šด์˜์ฒด์ œ๊ฐ€ ์žˆ๊ฒ ์ฃต?
์ €์˜ ๋ชจ๋“  ํฌ์ŠคํŒ…์€ Window ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑ๋ฉ๋‹ˆ๋‹ค:)

์šด์˜์ฒด์ œ ์œ„์—๋Š” Server๊ฐ€ ๋™์ž‘ํ• ๊ฑฐ๊ตฌ์š”,
Server์™€ ๊ฐ™์€ ์œ„์น˜, ํ˜น์€ ๊ทธ ์œ„์— PHP interpreter ํ˜น์€ PHP Engine์ด ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค!
์—ฌ๊ธฐ์„œ PHP Engine์€ php๋กœ ๋งŒ๋“ค์–ด์ง„ ์ฝ”๋“œ๋ฅผ ํ•ด์„ํ•ด์„œ ์‹คํ–‰ํ•œ ๋‹ค์Œ Server์™€์˜ ํ†ต์‹ ์„ ํ†ตํ•ด ๋Œ๋ ค์ค๋‹ˆ๋‹ค.
์—ฌ๊ธฐ์„œ์˜ 'php๋กœ ๋งŒ๋“ค์–ด์ง„ ์ฝ”๋“œ'๊ฐ€ php application์ด๋ผ๊ณ  ๋ถˆ๋ฆฌ๋Š” .phpํŒŒ์ผ์ž…๋‹ˆ๋‹ค!

๐Ÿง ์™œ Sever์ธก ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ• ๊นŒ์š”?

์ดˆ์ฐฝ๊ธฐ์—๋Š” ์›น ์„œ๋ฒ„์™€ ์›น ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ •๋ณด๋ฅผ ์ฃผ๊ณ ๋ฐ›๋Š” ์•„์ฃผ ๋‹จ์ˆœํ•œ ๊ตฌ์กฐ์˜€์Šต๋‹ˆ๋‹ค. ์›น ๋ธŒ๋ผ์šฐ์ €๊ฐ€ URL·URI์— ํ•ด๋‹น๋˜๋Š” ์›น ์„œ๋ฒ„์—๊ฒŒ ์›น์˜ ์ •๋ณด๋ฅผ ์š”์ฒญํ•˜๋ฉด, ์›น ์„œ๋ฒ„๊ฐ€ ์›น์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ๋‹ด๊ฒจ์žˆ๋Š” HTML(HyperText Markup Language) ๋ฌธ์„œ๋ฅผ ์ฐพ์•„ ๋„˜๊ฒจ์ฃผ๊ณ , ์›น ๋ธŒ๋ผ์šฐ์ €๋Š” ๊ทธ๊ฑธ ๋ณด์—ฌ์ฃผ๊ธฐ๋งŒํ•˜๋ฉด ๋๋‚˜๋Š”๊ฑฐ์ฃ . ์ด ๋•Œ, HTML ๋ฌธ์„œ๋ฅผ ์„œ๋ฒ„์™€ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ฃผ๊ณ ๋ฐ›๊ธฐ ์œ„ํ•œ ํ†ต์‹  ๊ทœ์•ฝ์„ HTTP(HyperText Transper Protocol) ๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. URL·URI๋Š” HTML์„ ์‹๋ณ„ํ•˜๋Š” ์‹๋ณ„์ž๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๊ณ , HTML์ด ํŽธ์ง€๋ผ๋ฉด HTTP๋Š” ๊ทธ ํŽธ์ง€๋ฅผ ์ „์†กํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ๋ชจ๋“  ๊ฒƒ์„ ํฌํ•จํ•œ๋‹ค๊ณ  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์„ธ๊ฐ€์ง€๋ฅผ ์œ ๋Ÿฝ์˜ ํŒ€ ๋ฒ„๋„ˆ์Šค๋ฆฌ ๊ฒฝ์ด ๊ฐœ๋ฐœํ•œ ์ธํ„ฐ๋„ท์˜ 3์š”์†Œ๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ WEB์ด ์„ฑ์žฅ์„ ํ•˜๋ฉด์„œ, ์ด ๋‹จ์ˆœํ•œ ๊ตฌ์กฐ์— ์—ฌ๋Ÿฌ๊ฐ€์ง€ ๋ฌธ์ œ๋“ค์ด ์ƒ๊น๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด Client๊ฐ€ Server์— ์–ด๋–ค ๊ธ€์„ ๋“ฑ๋กํ•˜๊ณ , ๊ทธ ๊ธ€์„ ์—ฌ๋Ÿฌ Client๋“ค์ด ๋ด์•ผํ•˜๋Š”๋ฐ, ๊ทธ๊ฑธ Web Server ํ˜ผ์ž์„œ๋Š” ๋ชปํ•œ๋‹ค๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ์–ด์š”. ๊ทธ๋ž˜์„œ ๊ทธ๋Ÿฐ ๋ฌธ์ œ๋“ค์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๊ณ ์•ˆ๋œ ๋ฐฉ๋ฒ•์œผ๋กœ, CGI(Common Gateway Interface) ๋ผ๋Š” ๊ธฐ์ˆ ์„ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. ํ•ญ์ƒ Web server์•„๋ž˜์—์„œ๋งŒ ๋™์ž‘ํ•˜๋Š” PHP, Java, Python๊ณผ ๊ฐ™์€ Server Side Script๊ฐ€ ์ƒ๊ฒผ๊ณ , ์ด Server Side Script์™€ Web Server๊ฐ€ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ทœ์•ฝ์ด CGI์ž…๋‹ˆ๋‹ค.

๊ทธ๋ ‡๊ฒŒ ์•ž ํฌ์ŠคํŒ…์—์„œ ์„ค๋ช…ํ–ˆ๋˜ ๊ตฌ๋™๋ฐฉ์‹์ด ์„ฑ๋ฆฝ๋ฉ๋‹ˆ๋‹ค.๐Ÿ˜€


๐Ÿ“– ๊ธฐ์ดˆ ๋ฌธ๋ฒ•

  • <?php : phpํŒŒ์ผ์„ ์‹œ์ž‘ํ•œ๋‹ค๋Š” ํ‘œ์‹œ>> ์„ค์ •ํŒŒ์ผ์„ ๋ณ€๊ฒฝํ•˜๋ฉด ํ•ญ์ƒ Server๋Š” ์žฌ์‹คํ–‰ํ•ด์ค๋‹ˆ๋‹ค.
  • โญTIP : php.iniํŒŒ์ผ์— short_open_tag = ON์œผ๋กœ ๋ฐ”๊ฟ”์ฃผ๋ฉด php ์ƒ๋žต๊ฐ€๋Šฅ
  • ?> : phpํŒŒ์ผ์˜ ๋. ์ดํ›„๋ถ€ํ„ฐ๋Š” text๋กœ ๋ณด์—ฌ์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
  • echo : ๋ฐ์ดํ„ฐ๋ฅผ ํ™”๋ฉด์— ์ถœ๋ ฅ
  • ; : ๋ช…๋ น ํ•œ ์ค„์ด ๋๋‚  ๋•Œ๋งˆ๋‹ค ํ‘œ์‹œ

์ฃผ์„ ๋‹ฌ๊ธฐ

โญTIP : ์›นํŽ˜์ด์ง€์˜ ๊ฐœ๋ฐœ์ž ๋„๊ตฌ์—์„œ HTML์˜ ์ฃผ์„์€ ๋ณด์ด์ง€๋งŒ, PHP์˜ ์ฃผ์„์€ ๋ณด์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. HTML์—์„œ ์ค‘์š”ํ•œ ์ฃผ์„์€ php์˜ ์‹œ์ž‘๊ณผ ๋ ํƒœ๊ทธ๋กœ ๊ฐ์‹ธ์„œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
<?php /*<div>๋ฏผ๊ฐํ•œ ์ฝ”๋“œ</div>*/?>

# ํ•œ ๋ฌธ์žฅ ์ฃผ์„ ๋‹ฌ๊ธฐ

1) #
2) //

# ์—ฌ๋Ÿฌ ๋ฌธ์žฅ ์ฃผ์„ ๋‹ฌ๊ธฐ

/* */


# ๊ฐ„๋‹จํ•œ ์‹ค์Šต

<?php
  echo "Hello wolrd";
?>

์œ„์˜ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ–ˆ์„ ๋•Œ php๋Š” ์ฝ”๋“œ๋ฅผ HTMLํ˜•์‹์œผ๋กœ ๋ฐ”๊ฟ”์„œ Server์— ๋ณด๋‚ด๊ณ ,
Server๋Š” ์›น ๋ธŒ๋ผ์šฐ์ €์— ์ „๋‹ฌํ•˜์—ฌ ์›น๋ธŒ๋ผ์šฐ์ €๋Š” ์•„๋ž˜์˜ HTML ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
(์ฐธ๊ณ  : 2023.06.26 - [WEB/PHP] - [PHP] APM์ด๋ž€?)

<html>
 <body>Hello world</body>
</html>

์—ฌ๊ธฐ๊นŒ์ง€ Visual Studio Code๋กœ PHP์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•œ ์ค€๋น„์™€ ๋‹จ์ถ•ํ‚ค, PHP๊ตฌ๋™๋ฐฉ์‹, ๊ธฐ์ดˆ์‚ฌ์šฉ๋ฒ•์„ ์•Œ์•„๋ดค์Šต๋‹ˆ๋‹ค!


์ฐธ๊ณ 

728x90