PHP ํ์ผ์๋ html ํ๊ทธ ์๋ ์์ฑ์ด ์์ต๋๋ค. ์ถ๊ฐํ์ญ์์ค.
2018 ๋ 9 ์ 13 ์ผ ์์ @egamma : VS Code๋ PHP์ ๋ํ ๊ธฐ๋ณธ ์ง์ ๋ง ์ ๊ณตํ์ง๋ง ์์ฅ์๋ ๊ฐ๋ ฅํ PHP ํ์ฅ ๊ธฐ๋ฅ์ด ์์ต๋๋ค.
์ด ๊ธฐ๋ฅ์ ์ด๋ฌํ ํ์ฅ์์ ์ ๊ณตํด์ผํฉ๋๋ค (Intelephence๋ ์ค์ ๋ก ์ด๋ฏธ ์ง์ํจ). ์ด๋ฌํ ํ์ฅ ๊ธฐ๋ฅ์ ์ฌ์ฉํด๋ณด๊ณ ๋ฌธ์ ๋ฅผ ์ ๊ธฐํ๊ณ ํ ์์ฒญ์ํ์ฌ ๊ฐ์ ํ ์ ์๋๋ก ๋์์ฃผ์ธ์.
์ด ๋ฌธ์ ๋ ์ด์ ์ ์๊ณ VS Code๊ฐ ๊ธฐ๋ณธ์ ์ผ๋ก PHP ์ง์์ ์ ๊ณตํด์ผํ๋์ง ์ฌ๋ถ์ ๋ํ ๋ ผ์๋ก ๋ฐ๋ ์์ต๋๋ค. ๊ทธ๋ฌ๋ C #, C ++, Go, Python, Rust์ ๊ฐ์ ๋ค๋ฅธ ๋ง์ ์ธ์ด์ ๋ง์ฐฌ๊ฐ์ง๋ก ์ฐ๋ฆฌ๋ PHP๋ฅผ VS Code์ ๋ฒ๋ค๋ก ๋ฌถ๊ณ ์ถ์ง ์๊ณ ์ฐ๋ฆฌ์ ํ๋ฅญํ ํ์ฅ ์ํ๊ณ์ ์์กดํฉ๋๋ค. ๋ฐ๋ผ์์ด ๋ฌธ์ ๋ฅผ ๋ง๋ฌด๋ฆฌํ๊ฒ ์ต๋๋ค.
ํฉ๋ฆฌ์ ์ผ๋ก ๋ค๋ฆฝ๋๋ค. HTML ํ๊ทธ ์ธํ
๋ฆฌ ์ ์ค ๊ณต๊ธ์๋ ์ฌ๊ธฐ ์ ์์ผ๋ฉฐ ํด๋น ๋ชจ๋์ PHP ์ฝ๋์ ์ฐ๊ฒฐํ๋ ๋ฌธ์ ์ผ ์ ์์ต๋๋ค. ๋ํ PHP๊ฐ ์ฌ๋ฐ๋ฅด๊ฒ ์๋ํ๋ ๋ฐฉ์์ ๊ธฐ์ตํ๋ค๋ฉด <?php
ํ๊ทธ ์ธ๋ถ์์๋ง ์ฌ์ฉํ ์ ์๋๋ก ๋ณด์ฅํฉ๋๋ค.
<?php
ํ๊ทธ ์ธ๋ถ์ @Tyriar ๋ ๋ฌด์์ ์๋ฏธํฉ๋๊น? PHP ํ์ผ์ <?php ?>
ํ๊ทธ ์ธ๋ถ์์ ์ฌ์ฉํ ์ ์์ต๋๊น?
<?php ?>
์ธ๋ถ๋ HTML์ด๊ณ ๋ด๋ถ๋ PHP์
๋๋ค. ๋ฐ๋ผ์ HTML ์๋ ์์ฑ์ <?php ?>
ํ๊ทธ ์ธ๋ถ์์๋ง ์ฌ์ฉํ ์ ์์ต๋๋ค.
@Tyriarํ์ง๋ง ์ง๊ธ ๊ทธ๋ค์ ์ธ๋ถ์์ ์ฌ์ฉํ ์ ์์ต๋๋ค <?php ?>
ํ๊ทธ .php
ํ์ผ์ด, ์ด์ฉ๋ฉด ๊ทธ๋ค์์์๋ง ์ฌ์ฉํ ์ ์์ต๋๋ค .html
ํ์ผ.
์ด ๊ธฐ๋ฅ์ ๋นจ๋ฆฌ ์ถ๊ฐํด์ฃผ์ธ์. ๊ธฐ๋ณธ ๊ธฐ๋ฅ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. ๊ฐ์ฌํฉ๋๋ค.
@osjn ๋๊ธ๋ก ์ฐ์ ์์๋ฅผ ์ ํ๋ ๋ฐ ๋์์ ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค. ์ฐ๋ฆฌ๋ฅผ ๋์ธ ์์๋ ๋ ์ข์ ๋ฐฉ๋ฒ์ ๊ตฌํ ๋ Pull Request ์ผ ๊ฒ์ ๋๋ค.
๋๋ฟ์ผ์ง๋ ๋ชจ๋ฅด์ง๋ง, php ๋ฌธ์์ด ๋ด๋ถ์์๋ intellisense๋ฅผ ์ฌ์ฉํ ์ ์๋ค๋ฉด ๋ฉ์ง ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค.
๋๋ ์ฐฌ์ฑ. ์ด ๊ธฐ๋ฅ์ด ํ์ํฉ๋๋ค.
๊ฑฐ์ ๋ชจ๋ PHP ๊ฐ๋ฐ์๋ VSCode๋ฅผ ๊ธฐ๋ณธ ํธ์ง๊ธฐ๋ก ์ ํํ๊ธฐ ์ํด์ด ๊ธฐ๋ฅ์ด ํ์ํฉ๋๋ค.
๋ ๋ง์ ๊ฐ๋ฐ์๋ฅผ ๋์์ผ๋กํ๋ ค๋ฉด์ด ๋ฌธ์ ๋ฅผ ์์ ํด์ผํฉ๋๋ค.
์ด์ ๋๋์ด ๋ฌธ์ ์ ๋ํด ๋จธ๋ฆฌ๋ฅผ ๋ถ๋ช ํ๋ ค๊ณ ์๋ํ์ง๋ง ๋ถํํ๋ TypeScript ๊ธฐ์ ์ด ๋ถ์กฑํ์ฌ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ๋ฐฉํด๊ฐ๋ฉ๋๋ค.
์ด๊ฒ ํ์ ํด์!
๊ฐ์. ๊ฐ๋จํ +1000
๋๋ ๋์ธ ์ ์์ง๋ง ๋์๊ฒ์ ๋ ๋ค๋ฅธ +1000. PHP์ HTML / CSS / JS๋ ํผํฉ ํ์ผ๋ก ์ผ๋ฐ์ ์ ๋๋ค. ์ ์ฒด Visual Studio + VS.php๋ฅผ ์ฌ์ฉํด ๋ณด์์ต๋๋ค-๋ํ ์ง์๋์ง ์์ต๋๋ค. PHP๋ฅผ ์ง์ํ๋ ๋ชจ๋ Microsoft ๊ฐ๋ฐ ๋๊ตฌ์์ ์ด๊ฒ์ด ์ ๊ฐ๊ณผ๋๋์ง ๊ณ์ ๊ถ๊ธํฉ๋๋ค. ์, PHP ์ง์์ด ์์ง๋ง HTML / CSS / JS์ ๋ํ IntelliSense (์ฝ๋ ์์ฑ ๋ฐ ์ฝ๋ ์ ์)๋ ์์ผ๋ฉด ์ธ๋ชจ๊ฐ ์์ต๋๋ค.
HTML์ JS ๋ธ๋ก ๋ฐ ์ธ๋ผ์ธ CSS๋ ๋ง์ฐฌ๊ฐ์ง์
๋๋ค.
settings.json์์ ์ ์ํ๋ฉด :
"files.associations": {"*.php": "html"},
... PHP IntelliSense (๋ถ๋ช
ํ)๊ฐ ์๋ํ์ง ์๊ณ HTML์ด ์์๋ฉ๋๋ค. ๊ทธ๋ฌ๋ style=" ...something... ";
๋ฅผ ์ฌ์ฉํ๋ ์ธ๋ผ์ธ -CSS๋ ์คํ์ผ ์์ฑ์ ๋ฐ์ดํ ์ฌ์ด์ ์ธ ๋ CSS ์์ฑ์ ์ ๊ณตํ์ง ์์ต๋๋ค.
๋ง์ฐฌ๊ฐ์ง๋ก <script>
๋ธ๋ก์ ์์ํ๋ฉด .js ํ์ผ์ ์ด๋ฉด ์ ์์ ์ผ๋ก ๋ฐ์ํ๋ ๋์ JS ์ฉ IntelliSense๊ฐ ์ ๊ณต๋์ง ์์ต๋๋ค.
๋๋ ๋ค์๊ณผ ๊ฐ์ ์ ์์์ง์งํฉ๋๋ค (๋ ์ฌ์ด ๊ฒฝ์ฐ).
<?php ... ?>
์์ PHP IntelliSense๋ฅผ ์์ํด์ผํฉ๋๋ค.<?php ... ?>
์ธ๋ถ์์ HTML IntelliSense๋ฅผ ์์ํด์ผํฉ๋๋ค.<style> ... </style>
๋ฐ style=" .... "
CSS IntelliSense๋ฅผ ์์ํด์ผํฉ๋๋ค.<script ... >
๋ฐ <script> ... </script>
JS IntelliSense๋ฅผ ์์ํด์ผํฉ๋๋ค.๋ํ ๊ฐ๋ฅํ๋ค๋ฉด @TheColorRed ์ ์ ์์
<?php ... ?>
ํ์ง๋ง HTML IntelliSense๋ฅผ ์ ํํ๋ ๊ฒ์ ๊ณ ๋ คํด์ผํ๋ ๊ฒ๋ณด๋ค $string="..."
๊ฐ์ ๋ฌธ์์ด์ ์์ฑํ๊ณ ์์ต๋๋ค. ๋ฌธ์ ๋ PHP ๊ฐ๋ฐ์๊ฐ ์ข
์ข
๋ค์๊ณผ ๊ฐ์ ๊ฒ์ ์ฌ์ฉํ๋ค๋ ๊ฒ์
๋๋ค.
<?php
$something="test";
echo "<div><a href="http://sample.com">This is a ".$something."</a></div>";
$continue = "coding here ... etc";
?>
.. PHP ํ๊ทธ๋ฅผ ์ด๊ณ ๋ซ๋ ๋ธ๋ก์ ํญ์ ํผํ๋ ค๋ฉด ๋ค์๊ณผ ๊ฐ์ดํ์ญ์์ค.
<?php
$something="test"; ?>
<div>
<a href="http://sample.com">This is a <?php echo $something; ?></a>
</div>
<?php
$continue = "coding here ... etc";
?>
๋ํ @egamma ๋ ๊ฐ์ฌํ์ง ์๊ฑฐ๋ ๊ฒ์ผ๋ฅธ ์๋ฆฌ๋ฅผํ๋ ค๋ ๊ฒ์ ์๋์ง๋ง, ์ฐ๋ฆฌ ์ค ํ ๋ช ์ด ์ค์ค๋ก ์ฝ๋ฉ ํ ์์์๋งํผ ์ ๋ฅํ๊ณ ์ง์์ด ํ๋ถํ๋ค๋ฉด ์๋ ์ฒํ๋ ๋๊ธ๋๋ณ๋ก ๋์์ด๋์ง ์์ต๋๋ค. ๋ถํํ๋-๋๋ ์๋๋๋ค :-/ ๊ทธ๋ฌ๋ ๋ด๊ฐ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก ๋์์ ์ค ์ ์๋ค๋ฉด ๊ธฐ๋ปํ ๊ฒ์ ๋๋ค (๋จ์ง ์ ์์ ๋ํ ์๊ฒฌ์ด ์๋๋ผ ํ ์คํธ ๋ฑ์ผ๋ก).
์ด ๊ธฐ๋ฅ์ด ์กด์ฌํด์ผํ๋ค๋ ํฉ์๊ฐ ์๊ณ ,์ด ๊ธฐ๋ฅ์ด์๋ ํ์ฌ PHP ์ง์์ ๋๋ถ๋ถ์ PHP ๊ฐ๋ฐ์๋ฅผ์ํ ๋ถ๋ถ์ ์ธ ์ง์ ์ผ๋ฟ์ ๋๋ค.
์ถ์ ๊ทธ๋ฆฌ๊ณ ๋ค์ ๋งํ์ง๋ง, ๋นํ๊ฐ๋ก ๋ค๋ฆฌ๋ ๊ฒ์ ์๋๋๋ค. ์ ๋ ์ง๊ธ๊น์ง VS Code๋ฅผ ์ ๋ง ์ข์ํ๋ฉฐ์ด ๋ฉ์ง ํ๋ก์ ํธ์ ๊ธฐ์ฌํ๊ณ ๊ณ์ ๊ธฐ์ฌํด ์ฃผ์ ๋ชจ๋ ๋ถ๋ค๊ป ๊ฐ์ฅ ๊ฐ์ฌํฉ๋๋ค!
ํธ์งํ๋ค:
๋จ์ํ ํ๋์ .ts ํ์ผ์ ๋ค๋ฅธ ์์
์ ํฌํจ / ์ฐธ์กฐํ ๊น์?
์ : /languages/php/common/php.ts
ํฌํจ : /languages/html/common/html.ts
ํฌํจ : /languages/css/common/css.ts
ํฌํจ: ...
ํ๊ทธ / ์์ฑ / ํจ์ ์ด๋ฆ๊ณผ ๊ฒน์น๋ ๋ถ๋ถ์ด์์ ์ ์์ง๋ง ์ง๊ธ์ ์๋ฌด ๊ฒ๋ ๋ ์ค๋ฅด์ง ์์ต๋๋ค. IntelliSense์ ๊ฒฝ์ฐ ์์ด์ฝ์ด ์๋ก ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๋ฌธ์ ๊ฐ๋์ง ์๋๋ค๊ณ ์๊ฐํฉ๋๋ค. ๊ทธ๋ฐ ๊ฒฝ์ฐ์๋ ์์ ์ฝ๋ฉ ๋ง ์๋ง์ด ๋ ์ ์์ต๋๋ค ... ๋ด๊ฐ ๋ค๋ฅธ ๊ฒ์ ๋์น๊ณ ์์ต๋๊น?
์ด๊ฒ์ด ์ถ๊ฐ๋์ง ์์ผ๋ฉด ํธ์ง๊ธฐ๋ฅผ ์ ํํด์ผํฉ๋๋ค. ์ง๊ธ์ 2 ๋ช ์ ํธ์ง๊ธฐ๋ฅผ ์ฌ์ฉํฉ๋๋ค.
PHP๋ก ์์ ํ ๋ HTML IntelliSense๋ฅผ ๋นํ์ฑํํ๋ ค๋ฉด ์ด๋ป๊ฒํด์ผํฉ๋๊น?
์ด ์ต์ ์ XML / HTML ํ๊ทธ๋ฅผ ์๋์ผ๋ก ์์ฑํ๊ธฐ ๋๋ฌธ์ ๋ณ์๋ฅผ ํญํ ์ ์๊ธฐ ๋๋ฌธ์ ์ ๋ชฝ์ ๋๋ค.
๋๋ ๋ด PHP ์ฝ๋๋ฅผ HTML๊ณผ ํผํฉํ์ง ์์ผ๋ฉฐ,์ด ์ค๋ฅ๋ฅผ ๋ง๋ค์ง ์์ ๊ฒ์ ๋๋ค. ์ ์ด๋ PHP "๋ชจ๋"์์ ๋นํ์ฑํํ๋ ์ต์ ์ ์ถ๊ฐํ์ญ์์ค.
PHP์ ๊ฒฝ์ฐ ํฌ๋ ์ธ intellisense https://marketplace.visualstudio.com/items?itemName=HvyIndustries.crane
@TheColorRed Crane Intellisense์ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ์ง๊ธ๊น์ง ๊ฐ์ฅ ์ธ๊ธฐ์๋ VS Code PHP ํ์ฅ ํ๋ก๊ทธ๋จ์ด๋ฏ๋ก ๋๋ถ๋ถ์ ์ฌ๋๋ค์ด ๋ฌธ์ ๋ฅผ๋ณด๊ณ ํ๋ ๊ฒ ๊ฐ์ต๋๋ค.
์ฌ๊ธฐ์๋ HTML์ CSS / JS์ ๋ํ ์๋ ์์ฑ์ด ํ์ํฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ๋ชจ๋์ฝ๋ก ์ ํํ๋ ๊ฒ์ ์ค์ ์ต์ ์ด ์๋๋๋ค. :-)
๋ฐฉ๊ธ vscode๋ฅผ ์๋ํ์ง๋ง์ด ๊ธฐ๋ฅ์ด ์์ผ๋ฉด์ด IDE๋ฅผ ์ฌ์ฉํ์ง ๋ชปํ๊ฒ๋ฉ๋๋ค. ์ด ๊ธฐ๋ฅ์ ๋ชจ๋ IDE์ ๋ํ ํ์ ๊ธฐ๋ฅ์ด๋ฏ๋ก ์ ๊ณตํ์ญ์์ค.
๋ฏธ๋ฆฌ ๊ฐ์ฌ๋๋ฆฝ๋๋ค.
์ด๊ฒ์ ๋งค์ฐ ํ์ํฉ๋๋ค. html ํ์ผ์ php ์ฝ๋๋ฅผ ๋ฃ๊ฑฐ๋ php ํ์ผ์ html์ ๋ฃ์ ๋ ์ ์ ํ ์ ๋ณด๋ฅผ ์ป์ง ๋ชปํ๋ ๊ฒ์ ์์ฒญ๋๊ฒ ์ฑ๊ฐ์ ์ผ์ ๋๋ค.
๋ด๊ฐ ๋์น ํ ๊ฐ์ง ํฐ ๊ธฐ๋ฅ์ ๋์ ๋๋ฃ๊ฐ vsCode๋ฅผ ์ฃผ ํธ์ง๊ธฐ๋ก ์ฌ์ฉํ๋ ๊ฒ์ ๋ฐฉํดํฉ๋๋ค.
์ด๊ฒ์ ๋งค์ฐ ์ผ๋ฐ์ ์ธ ๊ธฐ๋ฅ ์์ด๋ ๋์๊ฒ ๊ฑฐ๋ ํฌ๋ฌ์ ๋๋ค. ํ์ง๋ง ๋ถ๋๋ฌ์ด ์ผ์ ๋๋ค ... ์ ๋ง, ์ ๋ง, ์ ๋ง์ด IDE๋ฅผ ์ ๋ง ์ข์ํฉ๋๋ค. ์ด๊ฒ ๋ ํด์ง๋ฉด ๋๋ฌด ๊ธฐ๋ป์.
@egamma ์์ ํ๋ ค๋ ์ฝ๋๋ฅผ ์ฐพ๋ ๋ฐ ๋ถํ์ํ ์๊ฐ์ ์๋น ํ ํ PR์ ์ ์ถํ ์์์ ๊ฒ์ ๋๋ค. ๋์์ด๋ฉ๋๋ค.
@TechnikEmpire ํฐ 11 ์ VS ์ฝ๋ ๋ฆด๋ฆฌ์ค์์ ๋ณต๊ตฌํ๋ ๋์ 2015 ๋ 12 ์์ ์์ฑํ ๋๊ธ์ ๋๋ฌด ๋ง์ด ์ฝ์ง ๋ง์ญ์์ค. ์ด ์๊ฒฌ์ด ๋น๊ผฌ๋ ๊ฒ์ผ๋ก ๋์ค๋ฉด ์ฌ๊ณผ๋๋ฆฝ๋๋ค.
Intellisense for PHP์ ๊ด๋ จํ์ฌ ์ข์ ์ง์ ์ด ์์ต๋๋ค. ๊ธฐ์ฌํ๊ณ ์ถ๋ค๋ฉด @felixfbecker ๊ฐ ์์
ํ๊ณ ์๋ php-language-server
ํ๋ก์ ํธ์ ๊ธฐ์ฌํ๋ ๊ฒ์ ์ดํด๋ณผ ๊ฒ์ ์ ์ํฉ๋๋ค. Felix๋ php-debugger ์ ์ ์์ด๊ธฐ๋ํฉ๋๋ค. ๋ค์์ ๊ด๋ จ ์ ์ฅ์์
๋๋ค.
์ธ์ด ์๋ฒ ์ ๊ทผ ๋ฐฉ์ ๋ฐ ์ธ์ด ์๋ฒ ํ๋กํ ์ฝ ์ ๋ํ ์์ธํ ๋ด์ฉ์ ์ฌ๊ธฐ์์ ์ฐพ์ ์ ์์ต๋๋ค.
@egamma ํ์ง๋ง PHP ์ธ์ด ์๋ฒ๊ฐ VS Code์ HTML ์ธ์ด ์๋ฒ์ "์์"ํ ์์๋ ๋ฐฉ๋ฒ์ด ์์ต๋๊น? https://github.com/Microsoft/vscode/issues/1751 ์ด ์ด๊ฒ์ ๋ค๋ฃจ๋ ๊ฒ์ฒ๋ผ ๋ณด์ ๋๋ค.
@felixfbecker ์ด์ HTML ์ธ์ด ์๋ฒ๋ฅผ ์ถ์ถํ์ต๋๋ค. ์กฐ์ฌํ๋ ค๋ ์ฒซ ๋ฒ์งธ ์๋๋ฆฌ์ค๋ CSS ์ธ์ด ์๋ฒ์ ํตํฉํ์ฌ CSS ์น์ ์์ Intellisense๋ฅผ ์ ๊ณตํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. ์ด๊ฒ์ # 1751์์ ์ธ๊ธ ํ ์ฒซ ๋ฒ์งธ ์๋๋ฆฌ์ค์ ํด๋นํ๋ฉฐ # 8928์์๋ ์์ฒญ๋์์ต๋๋ค.
์ด ์์ ์ 9 ์์ด ์๋์๊ณ ์ง๊ธ์ 10 ์๋ก ์์ ๋์ด ์์ต๋๋ค.
๊ฐ์ฌ! HTML ์์
๋ด CSS ์ง์์ 10 ์๋ก ์์ ๋์ด ์์ต๋๋ค. JS ์ผ๋ช
<script>
์ง์์ ์ด๋ป์ต๋๊น?
@egamma ๋ณ๊ฒฝ ์ฌํญ์ด๋ ๊ฐ์ ์ฌํญ์ด ์์ต๋๊น? 10 ์ ์ค์์ด ์ง๋์ ๋ค์ ํ์ธํ๊ณ ์ถ์์ต๋๋ค. ์ง๊ธ๊น์ง 5 ๊ฐ์์ด ์ง๋ ํ์๋์ด ๋ฌธ์ ๋ก ์ธํด VS Code๋ฅผ ๊ธฐ๋ณธ ํธ์ง๊ธฐ๋ก ์ฌ์ฉํ์ง ์๊ณ ์์ผ๋ฉฐ ์๋ฐฑ ๋ช ์ ์กฐ์ฉํ ์ํผ์ด ์๋ค๊ณ ํ์ ํฉ๋๋ค. HTML / CSS ๋ฏน์ฑ์ ๋ํ ์์ ์ด์์ด โโ๊ธฐ์ฉ๋๋ค. ๊ทธ๋ฌ๋ ์ฐ๋ฆฌ๋ ์์ ํ HTML + CSS + JS + PHP ์ง์์ด ์ ๋ง๋ก ํ์ํฉ๋๋ค ...
@luxzg 10 ์ ๊ณํ์ ๋ฐ๋ฅธ HTML + CSS ์งํ, HTML + CSS + JS๋ ์คํธ๋ ์น์ ๋๋ค. ์ฌ๊ธฐ์์ ์งํ ์ํฉ์ ๋ฐ๋ฅด์ญ์์ค : https://github.com/Microsoft/vscode/projects/2
๋์๊ฒ์ด ๊ธฐ๋ฅ์ ํธ์งํ๋ ์ผ์ข ์ devops ํ์ผ์ powershell ์ธ๋ผ์ด๋๋ ๋ง์ ๋์์ด๋ฉ๋๋ค. ์ปค์๊ฐ ์ผ๋ถ ์ฝ๋ ๋ธ๋ก์์์ ๋ ํนํ ์๋์ผ๋ก ๊ตฌ๋ฌธ์ด ๋ณ๊ฒฝ๋ ํ์ฅ์ ๊ฐ์ง ์ฌ๋์ด์์ ์ ์์ต๋๊น?
FWIW "HTML Snippets" ํ๋ฌ๊ทธ์ธ๊ณผ ํจ๊ป PHP Intellisense๊ฐ ์ ์๋ํฉ๋๋ค.
@matthewringer ํ๋ฌ๊ทธ์ธ์ด ๋๋ฅผ ์ํด ์๋ํ์ง ์์ต๋๋ค.
์ด๊ฑด ๋์๊ฒ๋ ๋ฌธ์ ๋ค .. ์์ง ์๋ฌด๋ฐ ์์ง์์ด ์๋?
์ด๊ฒ์ด ๊ณง ์ถ๊ฐ๋๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. ์ด๊ฒ์ด ์์ผ๋ฉด ์ด๋ค PHP ๊ฐ๋ฐ์๋ ๊ทธ๊ฒ์ ์ฌ์ฉํ ๊ฒ์ ๋๋ค.
Sublime์ ๋ ๋๋ฆฌ๋ ๊ฒ์ด ๋์๋ค (TM). ๋ด ์ํผ์ ๊ตฌํ๊ณ HTML CSS ๋ฐ JS ์ง์์ ์ถ๊ฐํ๋ ๊ฒ๋ณด๋ค ๋๋ฅผ ์ฌ๋ํ๋ค๋ฉด VSCode.
1 ๋ ์ด ์ง๋ฌ์ง ๋ง ์ฌ์ ํ ์ด์ ๋ํ ์ง์์ด ์์ต๋๊น? ์ ๋ง? ... ๊ทธ๋ฆฌ๊ณ ์ฌ๊ธฐ์ ์ ๋ MS๊ฐ ๋ง์นจ๋ด ์ฐ๋ ๊ธฐ๊ฐ ์๋ ์ ํ์ ๋ง๋ค์๋ค ๊ณ ์๊ฐํ์ต๋๋ค.
์ด๊ฒ์ ๋์๊ฒ์์ด PHPStorm์ ๋ง๋๋ ๊ธฐ๋ฅ ์ค ํ๋์ด๋ฉฐ, ๋ด๊ฐ ์๋ํ ๋ค๋ฅธ ๊ฒ๋ณด๋ค ํจ์ฌ ์ข์ต๋๋ค. HTML, CSS, Javascript๋ฅผ ์ฌ์ฉํ์ฌ PHP์ ๋ํ ์ ์ ํ ์ธํ ๋ฆฌ์ ์ค / ๊ตฌ๋ฌธ ๊ฐ์กฐ ์ง์์ ๋ง์นจ๋ด ๊ตฌํํ ์ ์๋ค๋ฉด ๋ง์นจ๋ด ์ ๋ง ํ๋ฅญํ ๊ฒฝ๋ PHP ํธ์ง๊ธฐ๋ฅผ ์ป์ ์ ์์ต๋๋ค.
HTML, CSS ๋๋ ์๋ฐ ์คํฌ๋ฆฝํธ๋ฅผ ์ ๋ ฅํ๊ณ ์ด๋์์๋ PHP ์์ฑ์ ์ป๋ ๊ฒ์ ์ง๊ธ ๋น์ฅ ์ฑ๊ฐ์ ๋ฐฉ๋ฒ์ ๋๋ค. ์๋ ์์ฑ์์ด ๋ค๋ฅธ ํธ์ง๊ธฐ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
.php ํ์ผ์ HTML๋ก ๋ถ๋ฅ ํ ๋ค์ <?php ?>
ํ๊ทธ ์์์๋ ๊ฒ๋ง PHP ์ฝ๋๋ก ๊ตฌ๋ฌธ ๋ถ์ํ๋ ๊ฒ์ ๊ทธ๋ ๊ฒ ์ด๋ ต์ง ์์ต๋๋ค.
๋์๊ฒ์ +1, ์์ด์ฃผ์ธ์ :)
ํ๋ก๊ทธ๋๋ฐ์ ๋ฐฐ์ฐ๋ ๋์ VScode๋ฅผ ์ฌ์ฉํ๊ธฐ ์์ํ๋๋ฐ ์๋, ๊ดํ ๋ฐ ์ ์ฉ์ฑ์ ์ข์ํ๋ ๋ง๋ฒ ๊ฐ์ ๊ธฐ๋ฅ์ด ์ ๋ง ์ข์ต๋๋ค. ๋ฐ๋ก ์ค๋์ ๊ทธ๊ฒ์ด HTML ํ๊ทธ๋ฅผ ์ผ์น์ํค๋ ๊ฒ์ ๋งค์ฐ ์ด๋ ต๊ฒ ๋ง๋๋ PHP ํ์ผ (PHP ํ๊ทธ ๋ด ๋๋์์ด) ๋ด์์ HTML์ ์ ํํ์ง ์๋๋ค๋ ๊ฒ์ ๊นจ๋ฌ์์ต๋๋ค. ์ด์์ ์ด์ง ์์ ๋ค๋ฅธ ํธ์ง๊ธฐ๋ก ์ ํํด์ผํฉ๋๋ค.
์ฃ์กํฉ๋๋ค. ์๊ฒฉ์ผ๋ก ์ง์ ์ถ๊ฐ / ์์ ์ ์๋ ํ ์๋ ์์ง๋ง Microsoft ์ง์์ด ์ถ๊ฐ ํ ์ ์๋ค๋ฉด ์ ๋ง ๊ฐ์ฌํ๊ฒ ์ต๋๋ค. ์ ๋ ์ ๊ธฐ์ ์ผ๋ก PHP ํ์ผ์ HTML, Javascript, CSS ๋ฐ SQL ์ฝ๋๋ฅผ ํฌํจํฉ๋๋ค. ์ด ๊ธฐ๋ฅ์ ์ถ๊ฐํ๋ ๊ฒ์ด ์ฌ์ํ์ง๋ ์์ง๋ง ๋ค๋ฅธ ํธ์ง๊ธฐ ์์์ฒ๋ผ ๋ชจ๋ ๊ฐ์ง ํ ์ ์๋ค๋ฉด ์ข์ ๊ฒ์ ๋๋ค. ํ์ต ๊ฒฝํ์ ์ฆ๊ฒ๊ฒ ๋ง๋ค๊ธฐ ๋๋ฌธ์ VScode๋ฅผ ๋ชจ๋ ํจ๊ป ๋๋ ๊ฒ์ ์ ๋ง ์ซ์ดํ ๊ฒ์ ๋๋ค.
@egamma @aeschli ์ด ๋ฌธ์ ๋ ๊ฝค ์ค๋ซ๋์ ์ฌ์ฉ๋์ด ์์ต๋๋ค. HTML ๋ฐ CSS ์ธ์ด ์๋ฒ๋ก์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ์ถ๋ค๊ณ ๋ง์ํ์ จ์ต๋๋ค. ๋๋ฌ์ต๋๊น? ์ด๊ฒ์ด ๊ท๊ฒฐ๋๋ ๊ฒ์ ์ธ์ด ์๋ฒ๊ฐ ๋ชจ๋ ์ธ์ด ๊ธฐ๋ฅ์ ๋ค๋ฅธ ์ธ์ด ์๋ฒ์์ ์ฒ๋ฆฌํด์ผํ๋ ๋ฌธ์์์ ํน์ ๋ฒ์๋ฅผ ์ ์ ํ ์์๋ ๋ฅ๋ ฅ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. ๋ฐ๋ผ์ PHP LS๋ ๋ฌธ์๋ฅผ ๊ตฌ๋ฌธ ๋ถ์ ํ ํ ์ด๋ค ๋ฒ์๊ฐ HTML์ธ์ง ์ ์ธ ํ ์ ์๊ณ , HTML LS๋ ์ด๋ค ๋ถ๋ถ์ด JS ๋๋ CSS์ธ์ง ์ ์ธ ํ ์ ์์ผ๋ฉฐ, TS / JS LS๋ ์ด๋ค ๋ถ๋ถ์ด SQL ๋๋ GraphQL์ธ์ง ์ ์ธ ํ ์ ์์ต๋๋ค.
@felixfbecker ์์ด ์ง์์ ๋ช ๊ฐ์ง ์ด์ ํ ์ดํ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค.
html ์ธ์ด ์๋ฒ๋ ์ฌ๊ธฐ https://github.com/Microsoft/vscode-html-languageservice ์์ ์ฐพ์ ์ ์์ต๋๋ค
์ ๊ทผ ๋ฐฉ์์ vue ์ธ์ด ์ง์ https://github.com/octref/vetur๋ฅผ ์ํด mimiked๋์์ต๋๋ค.
// fyi @aeschli
@egamma ๊ทธ๋ ๋ค๋ฉด ์ด๋ป๊ฒ ์์ฑ์ ๋ค๋ฅธ ์ธ์ด ์๋ฒ๋ก ๋๊ธธ๊น์? ์ด๊ฒ์ ๋ํ ๋ฌธ์๊ฐ ์์ต๋๊น? ๋๋ ์ด๊ฒ์ด LSP ํ์ฅ์ ์ทจํ์ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ์ต๋๋ค.
์ฌ๊ธฐ์๋๊ณ
@felixfbecker ํ์ฌ ์ฝ๋ ์ธ์๋ ๋ค๋ฅธ ๋ฌธ์๊ฐ ์์ต๋๋ค. ์ฃ์กํฉ๋๋ค. PHP์ ๋ํ์ด ์ง์์ ์ถ๊ฐํ๊ธฐ ์์ํ ๋ ์ฌ์ธต ๋ถ์์ ์ํด
์๋ ํ์ธ์.
์์ง ์ธ์ด ์ฃผ์ ์ ์ํํ๋ ์ผ๋ฐํ ๋ ๋ฐฉ๋ฒ์ด์๋ ๊ฒ ๊ฐ์ง๋ง html ํ์ฅ์ ๊ตฌํ์ ๋งค์ฐ ๊ฐ๋จํฉ๋๋ค.
์ด์ ๋ ์ข์ ์ค๊ฐ ์ง์ ์ ๋๋ฌํ๋ค๊ณ ์๊ฐํฉ๋๋ค. VSCode๋ ์๋ฒ ๋๋ ์ธ์ด ์ง์ ๊ตฌํ์ ์ํํ๊ธฐ ์ํด html / css LS ํจํค์ง๋ฅผ ์ ๊ณตํฉ๋๋ค. ํํธ ์ ์ฐ์ฑ์ ์ ์งํ๋ฏ๋ก ๊ฐ LS๊ฐ ์ปจํ ์คํธ์ ๋ฐ๋ผ ๋ค๋ฅด๊ฒ ๋ฐ์ ํ ์ ์์ต๋๋ค.
๋ฌธ๋งฅ์ ๋ฐ๋ผ html ํ์ฅ์ jquery๊ฐ ํฌํจ ๋ ์คํฌ๋ฆฝํธ ํ๊ทธ๊ฐ ํฌํจ ๋ ๊ฒฝ์ฐ (vue์ ์ ์ฉ๋์ง ์์) jquery.d.ts๋ฅผ ๋ค์ด๋ก๋ํ๊ฑฐ๋ vue ํ์ฅ์ด ๊ฐ .vue ํ์ผ์ ๋ชจ๋ ํ์ธ์ ์ํ ํ ๊ตฌ์ฑ ์์๋ก ํ์ ํ ์ ์์์ ์๋ฏธํฉ๋๋ค. html์ ์ ์ฉ).
@aeschli ๋ฅผ ์ธ์ฉํ๋ ค๋ฉด : https://github.com/Microsoft/vscode/issues/12354#issuecomment -257242426
์๋ฒ ๋๋ ์ฝํ ์ธ ์ ๋ํ ์ผ๋ฐ์ ์ธ ์๋ฃจ์ ์ ๋ด ๋์์ผํ๋ ๋ฒ๊ทธ๊ฐ ์์ง๋ง, ์ฑ๊ณตํ์ง ๋ชปํ ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. ์ต์์ ์ฌ์ฉ์ ๊ฒฝํ์ ์ํด ๋ชจ๋ ํธ์คํธ ์ธ์ด๋ฅผ ๊ตฌ์ฒด์ ์ผ๋ก ๊ตฌํํ๋ ๊ฒ์ด ๋ ๋ซ๋ค๊ณ ์๊ฐํ๋ ๋ชจ๋ ๊ฒฝ์ฐ์๋ ๋ฏธ๋ฌํ ์ฐจ์ด๊ฐ ์์ต๋๋ค.
๊ทธ๋ฌ๋ ์๋ฒ ๋๋ ์ธ์ด ์ง์์ ๊ตฌํํ๋ ๋ฌธ์๊ฐ ๋ถ์กฑํ๋ค๋ ๋ฐ ๋์ํฉ๋๋ค. ๋ด vue ํ์ฅ์ ๋ชจ๋ ์ฃผ์ ๊ธฐ๋ฅ์ ์๋ฃํ๋ฉด ์ฝ๊ฐ์ ๊ธ์ ์ธ ๊ฒ ๊ฐ์์.
์ด๊ฒ์ ๋งค์ฐ ๋ถํํ ์ผ์ ๋๋ค. ์ด ๊ธฐ๋ฅ์ LSP์ ์ถ๊ฐ ํ ์ ์์ต๋๊น? ์ธ์ด ์๋ฒ๋ ๋ฌธ์๋ฅผ AST๋ก ๊ตฌ๋ฌธ ๋ถ์ํ๋ ๊ฒ์ด๋ฏ๋ก ์ธ์ด โโ์๋ฒ ๋ง์ด ๋ฌธ์์ ์ด๋ค ๋ถ๋ถ์ด ๋ค๋ฅธ ์ธ์ด๋ก ์์ฑ๋๊ณ ์ ๋ฌ๋์ด์ผ ํ๋์ง๋ฅผ ์๊ณ ์์ต๋๋ค. ์ด์ ํ์ฅ _also_๊ฐ ๋ฌธ์๋ฅผ ๊ตฌ๋ฌธ ๋ถ์ํด์ผํฉ๋๊น? ํ์๊ฐ Node (PHP, Java, ...)์ ๋ค๋ฅธ ๋ฐํ์์ ์์กดํ๊ธฐ ๋๋ฌธ์ ๋๋ถ๋ถ์ ๊ฒฝ์ฐ ๋ถ๊ฐ๋ฅํฉ๋๋ค.
๋๋ ์ด๊ฒ์ LSP์ ์ถ๊ฐํ๋ ๊ฒ์ด ๊ทธ๋ ๊ฒ ์ด๋ ค์ธ ๊ฒ์ด๋ผ๊ณ ์์ํ์ง ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ์๋ฒ๋ ๋ฒ์ + ์ธ์ด ๋ชจ๋์ ๋ฐฐ์ด๋ก URI์ ๋ํ ์๋ฆผ์ ๋ณด๋ผ ์ ์์ต๋๋ค. ์ด๋ค ํธ์ง๊ธฐ (VS Code๋ฟ๋ง ์๋๋ผ)๋ ํด๋น ๋ฒ์์ ๋ํด ๋ค๋ฅธ ์ธ์ด ์๋ฒ๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
@egamma ์ ์ฅ์์์ ์ธ์ด๋ฅผ ์ ๋ฌํ๋ ์ฝ๋๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค. ๋ ๊ตฌ์ฒด์ ์ธ ํฌ์ธํฐ๋ฅผ ์ ๊ณต ํ ์ ์์ต๋๊น? ๊ฐ๊ณผํ๋ค๋ฉด ์ฃ์กํฉ๋๋ค.
@felixfbecker Erich๋ ๋ค์์ ์๋ฏธํฉ๋๋ค. ๋ค๋ฅธ ์ธ์ด ์๋น์ค์ ์๋ฒ ๋ฉ์ _the server_ ๋ด๋ถ์์ ์ํ๋ฉ๋๋ค.
์๋ฅผ ๋ค์ด html ์๋ฒ์ ์ข
์์ฑ ์์ ํ์ธํ ์ ์์ต๋๋ค.
์ด๋ฌํ ๋ฐฉ์์ผ๋ก ์๋ฒ๋ ๋
๋ฆฝ์ ์ด๊ณ ์๋ฒ ๋๋ ์ธ์ด์ ์ปจํ
์คํธ๋ฅผ ๊ตฌ์ฑํ๋ ๋ชจ๋ ๊ถํ์ ๊ฐ์ต๋๋ค (JavaScript ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์๋ฒ ๋๋ ์ปจํ
์ธ , ์ธ์ด ๋ฒ์ (ES5, ES6 ..)์์ ์ฌ์ฉ ๊ฐ๋ฅ).
์ฌ๊ธฐ์์ ์ฌ๋ฌ๋ถ์ด ์ค๋ช
ํ๋ ์๋ฃจ์
(์ธ์ด ์๋ฒ ๊ฐ์ ํต์ )์ด ๋ฌธ์ ๋ฅผ ์ผ์ผํค๊ธฐ ์์ํฉ๋๋ค. ์ธ์ด ์๋ฒ ํน์ API ๋ฐ ์๋ฒ ๊ฐ์ ์ข
์์ฑ์ผ๋ก ์ด์ด์ง ์ ์์ต๋๋ค.
์ฐ๋ฆฌ๋ ๊ฒฐํฉ์ ๋ฎ๊ฒ ์ ์งํ๊ณ ์ธ์ด ํ์ฅ์ ๊ต์ฒด ํ ์ ์๋๋กํ๊ณ ์ถ์ต๋๋ค.
์ฆ, ๋ชจ๋ ์ธ์ด ์๋ฒ๋ ์ ๊ทผ ๋ฐฉ์์ ์์ ๋กญ๊ฒ ์ ํํ ์ ์์ต๋๋ค. ์ด๋ฅผ ์ํด ์ฌ์ฉ์ ์ง์ LS ๋ฉ์์ง๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด๊ฒ์ด ์ฐ๋ฆฌ๊ฐ 11 ์ ๋ฆด๋ฆฌ์ค๋ฅผ ๊ตฌํ ํ ๋ฐฉ๋ฒ์ ๋๋ค. ์๋ฒ ๋ ํด๋ผ์ด์ธํธ ์๊ฒ ํฌํจ ๋ ์ธ์ด ์ฝํ ์ธ ๋ง ํฌํจ ๋ ๊ฐ์ ๋ฌธ์ ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ค๋ฅธ ํ์ฅ์ ์์ฒญํ๋ ์์ฒญ์ ๋ค์ ๋ณด๋ ๋๋ค .
ํ ๋ก ์ ๊ณ์ํ๋ ๊ฒ์ ๋ณ๋์ ๋ฌธ์ ์ ๋๋ค. LSP๋ฅผ ํ์ฅํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์ ์์ผ๋ก ์๋ก์ด ๋ฌธ์ ๋ฅผ ์ ์ถํ ์ ์์ต๋๊น?
์ฌ๊ธฐ๋ ์ธ๋ฆฌ ๋ค์. ์ง๊ธ๊น์ง VS Code๋ฅผ ์ข์ํ์ง๋ง, PHP ๋ด๋ถ์ HTML ํ๊ทธ ๊ฒฝ์์ด ์๋ค๋ ๊ฒ์ ์ง์ ํ ์๋ฏธ์ ํ๊ดด์์ ๋๋ค. ์ผ์์ ์ผ๋ก PHP ํ์ผ์ HTML ์ธ์ด ๋ชจ๋๋ก ์ ํํ๊ณ ์์ง๋ง ๊ฒฐ๊ตญ ์ด๋ป๊ฒ ์๋ํ ์ง ๋ชจ๋ฅด๊ฒ ์ต๋๋ค.
์ด ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋ฅ์ด ๋ถ์กฑํ๋ค๋ ๊ฒ์ ์๊ธฐ ์ ๊น์ง VSCode์ ์ฌ๋์ ๋น ์ก์ต๋๋ค. ์ง๊ธ์ ์ญ๊ณ ํ ์ํ๋ก ๋์ ์์ต๋๋ค.
์ด ๊ธฐ๋ฅ์ผ๋ก ์ธํด VSCode๋ก ์ ํ ํ ์ ์์ต๋๋ค.
์ด๊ฒ์ ์ ์คํ ํ์ํ ๊ธฐ๋ฅ์ ๋๋ค. +99999
๋ค๋ฅธ ๋ชจ๋ ํธ์ง๊ธฐ์ ์กด์ฌํ๋ ๊ธฐ๋ณธ ๊ธฐ๋ฅ : |
์ธ ํ๋ก์ฐ
์์ ํ ์์๋์๊ธฐ์ ๋ํ ์ ๋ฐ์ดํธ๊ฐ ์์ต๋๊น?
๋ด ๋ง์ ์์ ์ด๊ฒ์ # 765์ ์ง์ ๊ด๋ จ์ด ์์ต๋๋ค.
: +1 : ์ข์ ํธ์ง๊ธฐ์ด๊ณ ๊ฐ๋จํ ๊ธฐ๋ฅ์ด ๋ถ์กฑํฉ๋๋ค :(
์ด๊ฒ์ด ์์ ํ ๋ซํ์ง ์์๋ค๋ฉด ์ธ์ ๊ฐ๋ ์ ์ฌ์ ์ผ๋ก ๊ณ ์ณ์ง ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. ๋๋ ๊ทธ๋ ๊ฒ ํฌ๋งํฉ๋๋ค. ๋น ๋ฅผ์๋ก ์ข์ต๋๋ค.
Atom์์ VSCode๋ก ์ ํํ๋ ๊ฒ์ ๋ง๋ ์ ์ผํ ๊ฒ์์ด ์ค์ํ ๊ธฐ๋ฅ์ด ์๋ค๋ ๊ฒ์ ๋๋ค.
๊ทธ๋ ๋ค๋ฉด ๋๊ตฌ๋ ํ ์คํ ์น PHP / HTML / JS์ ๋ํ ๋์ฒด ํธ์ง๊ธฐ๋ฅผ ์ ์ ํ ์ ์์ต๋๊น? VSCode๋ฅผ ์ ๋ง ์ข์ํ์ง๋ง,์ด ๊ธฐ๋ฅ์ ๋ถ์กฑ์ ์ ์๊ฒ์์ด ์ฐจ๋จ๊ธฐ ์ผ๋ฟ์ ๋๋ค. PHPStorm ๋๋ WebStorm์ด ์ข์๊ฐ์?
PHP IntelliSense์ ์ ์ง ๊ด๋ฆฌ์ ์ธ์ด ์ค๋ ๋๋ ๊ตฌ๋ ํ๊ธฐ์๋ ์ ๋ชฝ์ ๋๋ค. ๋ฌธ์ ๋ฅผ +1ํ๊ณ ์ถ๋ค๋ฉด ์ข์์๋ฅผ ๋๋ฌ์ฃผ์ธ์. ์ด ๋ชจ๋ +1 ๋๊ธ์ ํ ๋ก ์ ๊ฐ์น๋ฅผ ์ถ๊ฐํ์ง ์๊ณ ์๋ฆผ์ผ๋ก ์ค๋ ๋์ ์คํธ ๊ด๋ฆฌ์๋ฅผ ๋ณต์กํ๊ฒ ๋ง๋ญ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ชจ๋ ์ฌ๋๋ค์๊ฒ "์ด๊ฒ์ ์ ๋ง ๊ฐ๋จํ ๊ธฐ๋ฅ์ ๋๋ค"๋ผ๊ณ ๋งํ๋ ๊ฒ์ ๋๋ค. ์ค์ ๋ก๋ ๊ทธ๋ ์ง ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ๋ ๊ฒ ์๊ฐํ๋ค๋ฉด ์์ ๋กญ๊ฒ ํ๋ณดํ์ญ์์ค.
@felixfbecker ๋๋
์ค์ํ ๋ฌธ์ ์ ๋ํ ๋ก๋๋งต์ด ๋ถ์กฑํ๋ค๋ ๊ฒ์ ๋๋ค. ๊ฐ๋จํ๋ ์๋๋ ์ด๊ฒ์ 2017 ๋ ๊ฐ๋ฐ ํ๊ฒฝ์ ํ์ํ ๊ธฐ๋ฅ์ ๋๋ค. ๋งค์ฐ ๊ฐ๋จํ ์์ ์ผ๋ก ์น์ ์ ์ฃผ์์ด๋ ๋ค๋ฅธ ํค์๋๋ฅผ ํ๊ทธํ์ฌ ์ํ๋ ์ธํ ๋ฆฌ์ ์ค๋ฅผ ์ง์ ํ ์ ์์ต๋๋ค. GitHub ์ฝ๋ ๋ธ๋ก์ ์ผ, ํ ์คํธ ์น์ ์ ํ๊ทธ๋ก ๋ํํฉ๋๋ค.
๋ชจ๋ ์ง์ง ๊ฑฐ๋ฆฌ๋ ์๋ฆฌ๋ฅผ ๋ฃ๋ ๊ฒ์ด ์ฝ๊ฐ ์ง์ฆ๋ ๊ธดํ์ง๋ง
์ด ๋ฌธ์ ์ ๋ํด ์ฐจ์์ผ๋ก ๋ค์ผ์๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
์ด๋ค ๊ฒ์ด ์คํ ์์ค์ธ์ง๋ ์ค์ํ์ง ์์ต๋๋ค.
์๋น์์๊ฒ ์ ํ์ ์ ๊ณตํ๊ณ , ๊ทธ๊ฒ์ด ์ข์ง ์์ ๋ ์ฌ๋๋ค์
๋ถํ. ๋ด ์๋์ฐจ ๋๋ฌ๊ฐ ์ฐ๊ฐ ์๋น์ค๋ก ๋ฌด๋ฃ ์ธ์ฐจ๋ฅผ ํ ๋
์ต์ ์๊ธ ์๋์ฐจ ์ธํ๊ธฐ๊ฐ ๋ด ์ฐจ ์ ์ฒด์ ์ค๋ฌด๋ฌ๋ฅผ ๋จ๊น๋๋ค.
๋ถํํ๊ธฐ.
๋ฌด๋ฃ์ด๋ ์๋๋ ์ฌ์ฉ์๊ฐ ์์ ์ ์์ ํ๊ธฐ ์ํด ํฌ์ํด์ผํฉ๋๋ค.
์ ํธ์ง๊ธฐ๋ก ์ํฌ ํ๋ก์ฐ. ์ฌ๋๋ค์ ์ด๊ฒ์ ์์ ๋ด๊ธฐ ์ํด์๋ง ์ด๊ฒ์ํ๊ณ ์์ต๋๋ค.
๊ทธ๋ค์ ์๊ฐ์ ๋ญ๋นํ๊ณ ๋ฉ๋ชจ์ฅ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ฌ๋๋ค์
๋ถ์ ์ ์ธ ํผ๋๋ฐฑ์ ๋ฃ๊ณ ์ถ์ง ์๋ค๋ฉด ๊ตฌ๋
์ ์ทจ์ํ์ง๋ง
Microsoft๊ฐ ์ด๋ฌํ ๋ถ๋ง์ ๋ฃ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ๊ฒฐ๊ตญ, ๊ทธ๋ค์
์ด ์ ํ์ ์์ฐํ๋ ๋ฐ ํฌ๊ฒ ํฌ์ํ์ผ๋ฉฐ
๋์ ๋ฐ๊ณ ๋์ ์ค๋์? ์ ์ฃผ ํ ์ด์ ๊ฐ ํ๋ ๋์๋ ์ฌ๋๋ค์
์ง๋ถ ํ ์ ํ์ ์ฌ์ฉํ์ง ์์ต๋๋ค.
ํ ๋ฆฌํ์คํธ์ ๊ดํ ํ, ์ฌ๋๋ค์ ์ด๋ฏธ ์์ ์ ์๊ฐ์ด
์ํฌ ํ๋ก์ ๋๊ตฌ๋ฅผ ์ ํํ๊ธฐ์ํ ํฌ์๊ฐ ๋ญ๋น๋์์ต๋๋ค. ๊ฑฐ๊ธฐ์
์ถ๊ฐ ์๊ฐ์ ๋ง๋ค๊ธฐ ์์ํ ์์น์ ๋ํ ํต์ฐฐ๋ ฅ์ด ๊ฑฐ์ ๋๋ ์ ํ ์์
์ ์ฌ์ ์ผ๋ก ๋ ๋ง์ ์๊ฐ์ ๋ญ๋นํ๊ณ ์ถ๋ค๊ณ ์๊ฐํ๋๋ผ๋ ํฌ์. ์ด
์ข
์ด์ ๋ณต์กํ ๊ธฐ๋ฅ์ด ์๋๋ฏ๋ก ์ค์ ๋ก ์ฌ์ฉํ๋ค๋ฉด
์ ํ๋ฆฌ์ผ์ด์
์ค๊ณ์ ์ฌ๊ฐํ ๊ฒฐํจ์ด ์์ต๋๋ค. ๋๋
์ฐ๋ฆฌ๋ ๋๊ตฐ๊ฐ๋ก๋ถํฐ ๋์ ๋ฐ๊ณ ์์ง ์๊ธฐ ๋๋ฌธ์ ๋ค๋ฅธ ์ฌ๋๋ค๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ์ถ์ธกํฉ๋๋ค.
์ด ์ฝ๋๋ฒ ์ด์ค๋ฅผ ๋ฐฐ์ฐ๋ ค๋ฉด.
2017 ๋
3 ์ 29 ์ผ ์์์ผ ์ค์ 9:37 Stephen Eckels [email protected]
์ผ๋ค :
์ค์ํ ๋ฌธ์ ์ ๋ํ ๋ก๋๋งต์ด ๋ถ์กฑํ๋ค๋ ๊ฒ์ ๋๋ค. ๊ฐ๋จํ๊ฑฐ๋
์ด๊ฒ์ 2017 ๋ ๊ฐ๋ฐ ํ๊ฒฝ์ ํ์ํ ๊ธฐ๋ฅ์ ๋๋ค. ๋งค์ฐ ๊ฐ๋จํ ์์
์ฃผ์์ด๋ ๋ค๋ฅธ ํค์๋๋ก ์น์ ์ ํ๊ทธ๋ฅผ ์ง์ ํ์ฌ
์ฐ๋ฆฌ๊ฐ ์ํ๋ ์ง๋ฅ. GitHub ์ฝ๋ ๋ธ๋ก์ ๊ฒ,
ํ๊ทธ์ ํ ์คํธ.โ
๋น์ ์ด ์ธ๊ธ ๋์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ฐ๊ณ ์์ต๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ณ GitHub์์ ํ์ธํ์ธ์.
https://github.com/Microsoft/vscode/issues/670#issuecomment-290091896 ,
๋๋ ์ค๋ ๋ ์์๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AKtty5-1B6H5kqCCq9mb8rva78_dR53Uks5rql6ZgaJpZM4Gpk-J
.>
์ ์ ๋์ฝ์จ
์ด ๋ชจ๋ ๋ฌธ์ ์ ๋ํ ๋ต์ PHP ์ฉ NETBEANS์์ต๋๋ค.
์ค๋ซ๋์ ๋ฐ๊พธ๊ณ ์ถ์ง ์์ ํ๋ฅญํ IDE.
@ madruga88 Netbeans๋ ์ต๊ณ ๊ฐ ์๋๋๋ค. PHPStorm ์ ๋ ํ์ฌ ์ต๊ณ ์ PHP ํธ์ง๊ธฐ๋ผ๊ณ ์๊ฐํฉ๋๋ค. Jetbrains๋ Microsoft์ ์ ์ฒด ์ง๋ฅํ ์ฝ๋ฉ ์ง์์ ๊ฐ์ ธ ์์ ํจ์ฌ ๋ ๋์ ์ก๋ค๊ณ ์๊ฐํฉ๋๋ค.
์ฒ์ VSCode๋ฅผ ์ฌ์ฉํ๊ธฐ ์์ํ์ ๋ ์๊ฐ ๋๊ฒํ๋ ์ ์ผํ IDE๋ ์๋ฃ๊ฐ ์ผ๋ง๋ ๋น ๋ฅธ์ง์ ๋ํ IntelliJ ์ ํ์ IDE์์ต๋๋ค. ์ค์ ๋ก VSCode์ PHPStorm์ ์ผ๋ฐ์ ์ธ ํธ์ง ๊ธฐ๋ฅ ์ธก๋ฉด์์ ๋งค์ฐ ์ ์ฌํ ๋๋์ ๊ฐ์ง๊ณ ์์ต๋๋ค. VSCode๊ฐ ์ด์ฌํ ์คํจํ๋ ์ ์ผํ ๊ณณ์ (๊ทธ๋ฆฌ๊ณ ์ ๋ง ์ด๋ ต๋ค๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค) HTML์ด ํฌํจ ๋ PHP (์ฒ์๋ถํฐ ์๋ ํ์ด์ผ ํจ)์ ๋๋ค.
VSCode๊ฐ ๋ง์นจ๋ด PHP์ ํจ๊ป ์๋ํ๋๋ก HTML์ ํฌํจํ๊ฒ๋๋ค๋ฉด PHP๋ฅผ์ํ ์ต๊ณ ์ ํ ์คํธ ํธ์ง๊ธฐ (๋น IDE)๊ฐ ๋ ๊ฒ์ ๋๋ค.
ํ์ฌ ์ ๋ Sublime Text๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๋ค. ์๋ํ๋ฉด ์ ์ด๋ ๋ด๊ฐ HTML, CSS, Javascript ๋๋ PHP์ ๋ชจ๋ ๋์ผํ ํ์ผ์ ์๋์ง ์๊ณ ์๊ณ ์ ์ด๋ ์ ์ ํ ์์ฑ์ ์ ๊ณตํ๊ธฐ ๋๋ฌธ์ ๋๋ค.
์ฌ๋ฏธ์๋ ๊ฒ์ PHP ํ์ผ์ด ์ผ๋ฐ HTML ํ์ผ๋ก ์ฒ๋ฆฌ ํ ๋ ์ญ๊ณ ํ ํ ์คํธ์ ๋๋ค. VSCode๋ HTML ๊ตฌ๋ฌธ์ PHP ์ง์์ ์ถ๊ฐ ํ ์ ์์ต๋๊น? 2 ๊ฐ์ ๋ณ๋ ๊ตฌ๋ฌธ์ด ํ์ํ์ง ์์ต๋๊น?
@ drone540 phpstorm ์ ์๋ชป๋๋ก๋ ๋ฐ ์ฌ์ฉ (์ฝ๋ ์ ๋ ฅ์ด ๋๋ฆผ) ์ฑ๋ฅ์ผ๋ก ์ธํด ๋ชจ๋ linting ๋ฐ ํํ ๋๊ตฌ, ํ์ํ ๋ฐ ๋๋ฒ๊น ์ด ์๋ฒฝํ๊ฒ ํฌํจ ๋ netbeans๋ฅผ ์ ํํ๊ฒ๋์์ต๋๋ค.
์ ๋ Visual Studio๋ฅผ 10 ๋ ๋์ ์ฌ์ฉํด ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ netbeans๋ ์๋ฒฝํ ๊ธฐ๋ฅ๊ณผ ๋ฉ์ง ์ฑ๋ฅ ๋๋ฌธ์ PHP์ ๋น์ฃผ์ผ ์คํ๋์ค๋ผ๊ณ ๋งํ ์ ์์ต๋๋ค.
๋๋ vscode์์ ๋น ์ง ์ ์ผํ ๊ฒ์ด html + php ๊ตฌ๋ฌธ ํ์์ด๋ผ๋ ๊ฒ์ ๋์ํฉ๋๋ค.
ํ์ง๋ง PHPSTORM์ด ๋ฌด๋ฃ๋ผ๊ณ ํด๋ .. ์ฑ๋ฅ ๋๋ฌธ์ netbeans๋ฅผ ์ ํํฉ๋๋ค.
์ง์งํ๊ฒ ์ด๊ฒ์ 2015 ๋ ์ดํ๋ก ํด๊ฒฐ๋์ง ์์์ต๋๊น? ์ญ๊ณ ํจ์ผ๋ก ๋์ ๊ฐ๊ธฐ
์ด ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ง๋ง ์์ง์ด์ง ์๋์ง ๊ณ์ ํ์ธํฉ๋๋ค. ์ผ๋ง๋ ๋ง์ ๋ค๋ฅธ ํ๋ฅญํ ๊ธฐ๋ฅ์ด ์๋์ง์ ๊ด๊ณ์์ด VSCode๋ก ์ ํํ์ง ์์ต๋๋ค. ์ฌํ๊ฒ ํ์ํฉ๋๋ค.
์ด ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ง๋ง ์์ง์ด์ง ์๋์ง ๊ณ์ ํ์ธํฉ๋๋ค. ์ผ๋ง๋ ๋ง์ ๋ค๋ฅธ ํ๋ฅญํ ๊ธฐ๋ฅ์ด ์๋์ง์ ๊ด๊ณ์์ด VSCode๋ก ์ ํํ์ง ์์ต๋๋ค. ์ฌํ๊ฒ ํ์ํฉ๋๋ค.
์ง๊ธ ์ด๋ค IDE๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๊น?
@icenold ์ ๋ Brackets atm์ผ๋ก ๊ฝค ๋ฉ์ง ์ํฌ ํ๋ก์ฐ๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค. ๊ทธ๊ฒ์ ๊ณ ์ํ๋ ๊ฒฝํฅ์ด ์์ต๋๋ค.
๋ถํํ๋ ์ ๋ Visual Studio Code๋ฅผ ์ข์ํ์ง๋ง์ด ๋ฌธ์ ๋๋ฌธ์ Sublime์ผ๋ก ์ ํํด์ผํฉ๋๋ค.
์์ง ์ด๋ ค ์์ต๋๋ค? ๋ชจ๋๊ฐ์ด ๊ธฐ๋ฅ์ ์ํฉ๋๋ค!
์ด ๊ธฐ๋ฅ์ ๊ตฌํํ์ญ์์ค. ๊ฐ๋ฐ์ ์น๊ตฌ๋ค๋ก๋ถํฐ VS์ ๋ํ ์ข์ ์์์ ๋ค์์ต๋๋ค. ์ค๋ ์์นจ ์ญ๊ณ ํจ์์ ์ ํํ๋ ค๊ณ ํ์ง๋ง์ด ๊ธฐ๋ฅ์ด ์์ผ๋ฉด ํต๊ณผ ํ ์ ์์ต๋๋ค.
์ฌ๋ฌ๋ถ, ์ธ๋ดํฉ์๋ค.
@markpanado ์๋ ํฐ์ผ ๋ ์ง : "2015 ๋ 11 ์ 25 ์ผ"
์ฐ๋ฆฌ๊ฐ ๊ธฐ๋ค๋ฆฌ๋ ๋์ ์ผ๋ฐ์ ์ผ๋ก PHP๋ณด๋ค PHP์์ ํจ์ฌ ๋ ๋ง์ HTML์ ์์ฑํ๋ฏ๋ก HTML ๊ตฌ๋ฌธ์ PHP ํ์ผ์ ๊ธฐ๋ณธ๊ฐ์ผ๋ก ์ค์ ํ ์์๋ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. ์ฌ์ฉ์ ์ค์ ํจ๋์๋ ๋ถ๋ช ํ ๊ฒ์ด ์์ต๋๋ค.
๊ฐ์ฌ!
@ matt3224 ์ํ ํ์ ์ค์ ์ผ์ชฝ ํ๋จ์์๋ ์ธ์ด ํ์๊ธฐ๋ฅผ ํด๋ฆญํ๊ณ ๋น ๋ฅธ ์ ํ์์ 'ํ์ผ ์ฐ๊ฒฐ ๊ตฌ์ฑ'์ ์ ํํฉ๋๋ค.
@egamma ํ๋ฅญํฉ๋๋ค! ๊ฐ์ฌ
์ฌ์ค, php๋ HTML์ javascript / css์ ๋ง์ฐฌ๊ฐ์ง๋ก HTML๊ณผ ํจ๊ป ์๋ํ๊ณ html ํ๊ทธ๋ฅผ ์ฌ์ฉํ์ฌ ์์ ์ ๋ฎ๋๋ก ์ค๊ณ๋์์ต๋๋ค. ๋ค๋ฅธ ์ธ์ด๋ ๊ทธ๋ ๊ฒ ์๋ํ์ง ์์ต๋๋ค. ๋ฐ๋ผ์ .php ํ์ผ์ HTML ์ง์์ ๊ธฐ๋ณธ ์ ๊ณต ๊ธฐ๋ฅ์ด์ด์ผํฉ๋๋ค.
๋ด๊ฐ VS Code์ ํ์ฅ์ ์ข์ํ์ง๋ง ์ฌ๊ธฐ์์ ์ธ๊ธ ํ ๋ฌธ์ (์ด ์ค๋ ๋์ ๋ ์ง๊ฐ ์ผ๋ง๋ ์ค๋๋์๋์ง ๊ณ ๋ คํ ๋)๋ ๊ฑฐ๋ ์ฐจ๋จ๊ธฐ์ ๋๋ค. ๋ฌผ๋ก ๊ทธ๊ฒ ์์ด๋ ์์ ์ ์๋ฃ ํ ์ ์์ง๋ง, ๋ฉ๋ชจ์ฅ์ผ๋ก ๋์๊ฐ์ ์ธ์ด ๋๊ตฌ์์ด ๊ฐ ์์์๋งํผ ๋๋ฆฌ๊ณ ๋๋ฆฌ๊ฒ ๋๊ปด์ง๋๋ค.
์ด๋ ๊ฒํด์๋ ์๋ฉ๋๋ค.
์๋ ํ์ธ์ vscode php ์ ํธ๊ฐ ์ฌ๋ฌ๋ถ. ๋น์ ์ 0.7.0 ๋ฆด๋ฆฌ์ค์ ๊ด์ฌ์ด์์ ์ Intelephense .
HTML ์ธ์ด ๋ชจ๋์ ์์ด์ผํ๊ณ php์์๋ ๊ตฌ๋ฌธ ์์์ ์ฌ์ฉํ ์ ์๋ค๋ ์ ์์ ๋ช ๊ฐ์ง ๋จ์ ์ด ์์ต๋๋ค. ํฌ๋งทํ (gif์์ ์๋ผ ๋)์ 3 ๋จ๊ณ ํ๋ก์ธ์ค์ ๋๋ค : html ํฌ๋งท-> php๋ก ์ ํ-> php ํฌ๋งท.
๋ฐ๋ผ๊ฑด๋ ์ฌ๋ฌ๋ถ์ ๋ชจ๋ ๋ทฐ์ ๋ชจ๋ธ์ ๋ฉ์ง๊ฒ ๋ถ๋ฆฌํ๊ณ ์์ผ๋ฉฐ ์ด๋ฌํ ๋จ์ ์ ๊ทธ๋ค์ง ๋ฌธ์ ๊ฐ๋์ง ์์ต๋๋ค.
@bmewburn ๋๋ฐ ! ์ธ์ ์ฌ์ฉํ ์ ์์ต๋๊น?
@popcorner ์ด์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๊ฐ์ธ์ ์ผ๋ก File-> Exit๋ก ์ด๋ํ์ฌ Netbeans๋ฅผ ๋ค์ด๋ก๋ํ์ฌ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ต๋๋ค.
์น ๊ฐ๋ฐ ์ ๋์จ ํฌํจ. ์ฐ์ํ. ๋ ์ฝ๋๋ ๊ด์ฐฎ์ ํ์ดํ ์คํฌ๋ฆฝํธ IDE์ด๋ฉฐ ๋ณ๋ก๋ ์๋๋๋ค.
๊ทธ๋ฐ์. ๋ ๋ง์ ๊ฒ์ ๊ธฐ๋ํ์ง ์์ผ๋ฉด ์ค๋งํ์ง ์์ต๋๋ค.
2017 ๋
6 ์ 24 ์ผ ํ ์์ผ ์คํ 5:02 Ben Mewburn [email protected]
์ผ๋ค :
@popcorner https://github.com/popcorner ์ด์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
โ
๋น์ ์ด ์ธ๊ธ ๋์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ฐ๊ณ ์์ต๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ณ GitHub์์ ํ์ธํ์ธ์.
https://github.com/Microsoft/vscode/issues/670#issuecomment-310865635 ,
๋๋ ์ค๋ ๋ ์์๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AKtty5j9FjPOsarF3tjW9qq2JugqnYjZks5sHXlggaJpZM4Gpk-J
.>
์ ์ ๋์ฝ์จ
@bmewburn Intellephense๋ฅผ ์ฌ์ฉํด ๋ณด์์ง๋ง ์ฌ์ ํ ๋์ ๋๋ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. HTML ํ๊ทธ ์์ฑ ๋ด๋ถ์ ์ ๋ ฅ ๋ PHP ์ (id = "") ์๋ ์์ฑ ๊ธฐ๋ฅ์ด ์์ค๋ฉ๋๋ค. PHP ํ ๋ง ํ์์ด ์์ค๋ฉ๋๋ค.
HTML๊ณผ PHP ์ฌ์ด์ ๋์ผํ ์๋ค๊ฐ ํ์ํ๋ฉฐ ๋๋ฌด ๋ง์ ์๊ฐ์ ๋ญ๋นํฉ๋๋ค.
๋ณ๋์ ๋ฉ๋ชจ์์,์ด ์ ์ฒด ์ค๋ ๋๊ฐ ํ๋์ ํฐ ํธ๋กค์ธ์ง ๊ถ๊ธํดํ๊ธฐ ์์ํ์ต๋๋ค. 2 ๋ ํ์๋ ์ด๋ป๊ฒ ๋ฌธ์ ๊ฐ ๋ ์ ์์ต๋๊น? ๋น์ทํ ๋ฌธ์ ๋ฅผ ์ฌ๋ ๋ชจ๋ ์ฌ๋์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ์ด ๋ฌธ์ ๋ฅผ ์ธ๊ธํ์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ๋์ ์ด๋ค ์ง์ ๋ ์ด๋ฃจ์ด์ง์ง ์์์ต๋๋ค.
๋๋ Netbeans๋ก ์ฎ๊ฒผ๋๋ฐ, PHPStorm์ด ํ๋์ ํ์ผ์์ php html js๋ฅผ ์๋ฒฝํ๊ฒ ์ฒ๋ฆฌ ํ ์ โโ์๋ค๋ ๊ฒ์ ์๊ฒ๋์์ต๋๋ค. SSH๋ฅผ ํตํ ์๊ฒฉ DB ํตํฉ๋ ๊น๋ํฉ๋๋ค.
๊ทธ๋์ Netbeans์ PHPStorm์ผ๋ก ํ ์คํธ๋ฅผํ์ต๋๋ค.
Netbeans๋ ์ด๊ฒ์ ๊ฝค ๊ด์ฐฎ์ ๊ฒ ๊ฐ์ต๋๋ค.
Netbeans
๋ค์์ ์ง์ํฉ๋๋ค.
๋ค์๊ณผ ๊ฐ์ด ์คํจํฉ๋๋ค.
PHPStorm
๊ฒฝ๋ฏธํ ์คํจ :
PHPStorm์ ํ์คํ VSCode (์๋ ํ ๋)์ ํจ์ฌ ๋ ๊ฐ๊น๋ค๊ณ ๋๋ผ์ง๋ง Netbeans๋ ๊ทธ๋ ๊ฒํฉ๋๋ค. ์๋ ์์ฑ์ด ์ค์ ๋ก ์ด๋ป๊ฒ ์๋ํ๋์ง ํ ์คํธํ๊ณ ์ถ๋ค๋ฉด. PHPStorm์์ ํ ์คํธํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ๋ํ PHPStorm๊ณผ VSCode๋ ์ ์ฌํ ํธ์ง ๊ธฐ๋ฅ์ ๋ง์ด ๊ณต์ ํฉ๋๋ค. ์ฑ๋ฅ๋ฉด์์ PHPStorm์ด ๋ ๋น ๋ฅด๋ค๊ณ ์๊ฐํฉ๋๋ค. ์๋ ์์ฑ์ ์ฌ์ฉํด๋ ์ง์ฐ์ด ๋ฐ์ํ์ง ์์์ต๋๋ค. Netbeans๋ ์๋ ์์ฑ์ผ๋ก ์ธํด ์ฝ๊ฐ์ ์ง์ฐ์ ๋ฐ๊ฒฌํ์ต๋๋ค.
VSCode๊ฐ ์ค์ ๋ก์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ๊น์ง ์ผ๋ง๋ ๊ฑธ๋ฆด์ง ๋ชจ๋ฅด์ง๋ง ๋ง์นจ๋ด ์ธ์ ์๋ํ๋์ง ๋ฏฟ์ต๋๋ค. PHPStorm์ด ์๋ํ๋ ๋ฐฉ์์ ํจ์ฌ ๋ ๊ฐ๊น๊ฒ ์๋ ํ ๊ฒ์ด๋ฉฐ ์ ์ด๋ PHP ์๋ ์์ฑ์์ํ ์ต๊ณ ์ ํธ์ง๊ธฐ๊ฐ ๋ ๊ฒ์ ๋๋ค.
์ต๊ทผ์ SublimeText์์ VSCode๋ก ์ ํ ํ์ฌ์ด ๋ฌธ์ ์ ์ง๋ฉดํ์ต๋๋ค. ์ด๊ฒ์ ๋งค์ฐ ์ฑ๊ฐ์ ๋ฌธ์ ์ด๋ฉฐ ๋งค์ฐ ๊ธฐ๋ณธ์ ์ธ ๋ฌธ์ ์ด๊ธฐ๋ํฉ๋๋ค. ๊ทธ ๋๋ฌธ์ SublimeText๋ก ๋์ ๊ฐ์ผํฉ๋๋ค. PHP๋ฅผ HTML๊ณผ ์ฐ๊ฒฐํ๋ ค๊ณ ์๋ํ์ง๋ง ๋ชจ๋ PHP ์ฝ๋๊ฐ ํฐ์์ด๋๊ณ ๊ตฌ๋ฌธ ๊ฐ์กฐ๊ฐ ์ ํ ํ์๋์ง ์์ต๋๋ค. ๋ฌด์์ด!
10 ๋ ํ์ ๋ง์นจ๋ด ๋ด ์ปดํจํฐ์ ์๊ตฌ์ ์ผ๋ก ์ค์น ๋ ๋ง์ดํฌ๋ก ์ํํธ ์ํํธ์จ์ด ํ๋๋ฅผ ๊ฐ๊ฒ ๋ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ์ง๋ง 2 ๋ ๋์ ๊ฐ๋จํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์ผ๋ฉด ๋ค์ ์ฐ๋ ๊ธฐํต์ ๋ฒ๋ฆด ๊ฒ์ ๋๋ค.
PHP ๋ฌธ์ ๋ด์ HTML์ ์์ฑํ๋ฉด
@ingageco ์๋์, ์๋๋๋ค. @felixfbecker์ PHP Intellisense ํ์ฅ์์ ์ ์ํ์ต๋๋ค. ๊ทธ๋ฌ๋ ํ์ฅ ๊ธฐ๋ฅ์ ํน์ ํ์ฑํ ๋ฌธ์๋ฅผ ์ง์ ํ ์ ์๊ธฐ ๋๋ฌธ์ ๊ทธ๊ฐ ํ ์์๋ ์ผ์ด ์์ต๋๋ค.
ํ ๊ฐ์ง๋ง ์๊ณ ์ถ์ต๋๋ค. ์งํ ์ค์ ๋๊น (์กฐ๊ธ์ฉ ์๊ธฐ ๊ฐ๋ฏธ ๊ฑธ์) ์๋๋ฉด ์์ ํ ์ ์ณ ๋์์ต๋๊น?
@bsienn ๋ฌด์์ ๋ํด? php intellisense ํ์ฅ์ด ์งํ ์ค์ด์ง๋ง ์ฝ๋ ํ์ ์ด๊ฒ์ด ๊ธฐ๋ณธ์ ์ผ๋ก ์ ๊ณต๋๋ ๊ฒ์ ์ํ์ง ์์ต๋๋ค.
@ jens1o ๋ต์ฅ php intellisense extension
Fleix Baker ํ์ฅ์ ๋ํด ๋ง์ํ์๋ ๊ฑด๊ฐ์?
๊ทธ๋์์ด ์ค๋ ๋๋ ์ค๋ณต์
๋๊น? ์ง๊ธ ํผ๋ ์ค๋ฌ์์. ์งํ์ ์ํด ๊ทธ์ ํ๋ฌ๊ทธ์ธ ์ ์ฅ์๋ฅผ ๋ฐ๋ผ์ผํฉ๋๊น?
๋ค, ์ ๋ Felix์ ํ์ฅ์ ๋ํด ์ด์ผ๊ธฐํ๊ณ ์์ต๋๋ค. ๊ทธ๋ ์ต๋๋ค. ์ ๋ฐ์ดํธํ๋ ค๋ฉด ๊ทธ์ ์ ์ฅ์๋ฅผ ๋ฐ๋ผ์ผํฉ๋๋ค.
... ๊ทธ๋์ 2 ๋ ์ด ์ง๋ ์ง๊ธ๋ php ํ์ผ์ html ์๋ ์์ฑ ๊ธฐ๋ฅ์ด์๋ ์๋ฃจ์ ์ด ์์ต๋๊น? ๋๋ VS ์ฝ๋๋ฅผ ์ ๋ง ์ข์ํฉ๋๋ค. ์ด์ ๋ํด Sublime์ผ๋ก ๋์๊ฐ ํ์๊ฐ ์์ต๋๋ค :-(
์ง๊ธ ์ฐ๋ฆฌ๋ ์ ๋ง๋ก ๊ทธ๊ฒ์ ์ฒ๋ฆฌํด์ผํฉ๋๋ค
์๋๋ฉด ๊ฑฐ๊ธฐ์ ๋ค๋ฅธ ์ต์ ์ด ์๊ธฐ ๋๋ฌธ์ ๋น์ ์ด ์์ง ๋ชปํฉ๋๋ค. ํ๋ด์ ๋๋ฒ๊น ๋ง์ผ๋ก๋ ์ํฌ ํ๋ก์์ ๋ค๋ก ๋ฌผ๋ฌ๋์ง ์์ต๋๋ค. ์ ๊ตฌํ๋์ง ์์์ง๋ง ๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก๋ ์ ์ ํ ์ต์ ์ด์์ ๋๋ ์ ๋๋ก ๊ทธ๋ ์ง ์์ต๋๋ค. ์ด ๋ฌธ์ ๋ ์ฒ์๋ถํฐ ํด๊ฒฐ๋์์ ๊ฒ์ ๋๋ค.
์ฃผ๋ ๋ฌธ์ ๋ ๋๊ฐ ๊ทธ๊ฒ์ ์ ๊ณต ํ ๊ฒ์ธ์ง ์ฐ๋ฆฌ๊ฐ ๋ชจ๋ฅธ๋ค๋ ๊ฒ์
๋๋ค. ์ด์์ ์ผ๋ก๋ PHP ํ์ฅ ( @felixfbecker ?)์
๋๋ค. ๋ํ HTML ์ธ์ด ์๋ฒ์ ๋ํ ์ง์์ ์ถ๊ฐ ํ ์ ์์ต๋๋ค.
๋ชจ๋ HTML ์ค๋งํธ ํจ์ ๋
ธ๋ ๋ชจ๋ ๋ก๋ ์ฌ์ฉํ ์ ์์ต๋๋ค.
@aeschli ์์์ ์ค๋ช ํ ๊ฒ์ฒ๋ผ ๋ชจ๋ ์ธ์ด ์๋ฒ๊ฐ ๊ฐ๋ฅํ ๋ชจ๋ ์๋ฒ ๋๋ ์ธ์ด์ ๋ํด ์ธ์ด ์๋ฒ๋ฅผ ํฌํจํ๋๋ก ์๊ตฌํ๋ ๊ฒ์ด ์ณ๊ณ ์ง์ ๊ฐ๋ฅํ ์ ๊ทผ ๋ฐฉ์์ด๋ผ๊ณ ์๊ฐํ์ง ์์ต๋๋ค. PHP๋ ์ผ๋ฐ์ ์ผ๋ก HTML๊ณผ SQL์ ํฌํจํฉ๋๋ค. HTML์ ์ผ๋ฐ์ ์ผ๋ก CSS์ JS๋ฅผ ํฌํจํฉ๋๋ค. JS๋ ๋ค์ ์ผ๋ฐ์ ์ผ๋ก HTML์ ํฌํจํฉ๋๋ค. ์ธ์ด ์๋ฒ ์์ฑ์๋ ๋ชจ๋ ์ค์ฒฉ ๋ ์กฐํฉ์ ์ง์ํ๋ ํ ๋ผ ๊ตฌ๋ฉ์ ๋ซ๊ณ ์ฌ์ฉ์๋ ๋์ผํ ์ธ์ด์ ๋ํด ์ฌ๋ฌ ๋ฒ ์ค์น๋ ์ธ์ด ์๋ฒ๋ฅผ ๊ฐ๊ฒ๋์ง๋ง ๋ ์ด์ ์ด๋ฌํ ํฌํจ ๋ ์ธ์ด์ ์ฌ์ฉํ ์ธ์ด ์๋ฒ ๋ ํด๋น ๋ฒ์ ์ ์ ์ด ํ ์ ์์ต๋๋ค. https://github.com/Microsoft/vscode/issues/670#issuecomment -282702369 (๊ฐ์กฐ ๋ด)์์ ์์ ์ ๋งํ ๊ฒ์ฒ๋ผ :
์ธ์ด ์๋ฒ ํน์ API ๋ฐ ์๋ฒ ๊ฐ์ ์ข ์์ฑ์ผ๋ก ์ด์ด์ง ์ ์์ต๋๋ค.
๊ฒฐํฉ์ ๋ฎ๊ฒ ์ ์งํ๊ณ ์ธ์ด ํ์ฅ์ ๊ต์ฒด ํ ์ ์๋๋กํ๊ณ ์ถ์ต๋๋ค.
๋๋ ๊ทธ๊ฒ์ ๊ฐ๋ ฅํ ๋์ํ๋ฉฐ, ๋ด ๊ด์ ์์ ์๋ฒ ๋ฉ ์ ๊ทผ ๋ฐฉ์์ ๋ด ๊ฐ์ ์๋ฃจ์ ์ด ์๋ ์ ํํ ๊ทธ๋ก ์ด์ด์ง๋๋ค.
<style>
ํ๊ทธ์ ๋ฒ์๋ฅผ ํฌํจ ๋ CSS๋ก, <script>
ํ๊ทธ์ ๋ฒ์๋ฅผ ๋ค์๊ณผ ๊ฐ์ด VS Code์๋ณด๊ณ ํฉ๋๋ค. ์๋ฒ ๋๋ JS.didOpen
์๋ฆผ์ ๋ณด๋
๋๋ค.์ด ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉํ๋ฉด ์ฌ์ฉ์๊ฐ ์ฌ์ฉํ ์ธ์ด ์๋ฒ ( ๊ต์ฒด ๊ฐ๋ฅ )๋ฅผ ์์ ํ ์ ์ด ํ ์ ์์ผ๋ฉฐ ๊ฐ๋ณ ์๋ฒ๋ ๋ค๋ฅธ ์ธ์ด ์๋ฒ๋ฅผ ์ข ์์ฑ ์ผ๋ก ํฌํจํ๋ ๋ฐ ์ ๊ฒฝ ์ธ ํ์๊ฐ ์์ต๋๋ค. ์ด๋ ์๋ฒ ๋๋ ์ธ์ด์ ์ต์์ ์ธ์ด ๊ฐ์ ์ผ๊ด๋ ๊ฒฝํ์ ์๋ฏธํ๋ฉฐ ๋ชจ๋ ์ธ์ด ์๋ฒ์ ๋ํ SoC๋ฅผ ์ ์งํ์ฌ ํ๋์ ์ธ์ด ๋ง ๊ด๋ฆฌํ๋๋กํฉ๋๋ค.
์๋ฆผ์ ๋๋ต ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
/** Parameters for textDocument/publishEmbeddedScripts, a notification sent from server to the client */
interface PublishEmbeddedScriptsParams extends TextDocumentIdentifier {
/** All the embedded scripts for this text document */
embeddedScripts: EmbeddedScript[]
}
interface EmbeddedScript {
/** Ranges in the text document that form this continuous embedded script */
ranges: Range[]
/** The language ID for that script (as also used in MarkedString) */
languageId: string
}
๋ค์๊ณผ ๊ฐ์ PHP ๋ฌธ์๊ฐ ์ ๊ณต๋ฉ๋๋ค.
<h1>Foo</h1>
<?php echo 'Hello' ?>
<p>Bar</p>
PHP langserver๊ฐ VS Code๋ก ์ ์กํฉ๋๋ค.
{
embeddedScripts: [{
languageId: 'html',
ranges: [
{ start: { line: 0, column: 0 }, end: { line: 0, column: 11 }}
{ start: { line: 2, column: 0 }, end: { line: 2, column: 9 }}
]
}]
}
๊ทธ๋ฌ๋ฉด HTML langserver๊ฐ file:///foo.php#embedded1
์ ๊ฐ์ URI๋ฅผ ์ฌ์ฉํ์ฌ VS Code์์ textDocument/didOpen
๋ฅผ ์์ ํ๊ณ ๋ค์ ๋ด์ฉ์ ๋ฐ๊ฒ๋ฉ๋๋ค.
<h1>Foo</h1>
<p>Bar</p>
์ํ๋ ๊ฒฝ์ฐ ๋ณ๋์ ๋ฌธ์ ์์์ด ๋ฌธ์ ๋ฅผ ๋ ผ์ํ๊ฒ๋์ด ๊ธฐ์ฉ๋๋ค.
@aeschli ๋๋์ด ๋ฌธ์ ๊ฐ ์์ง ์ด๋ ค ์์ง๋ง ์ด๊ฒ์ด ์ธ์ด ์๋ฒ ๋ฌธ์ ๋ก ๊ณ์ ๋ฐ์ก๋๊ณ ์๋ค๋ ์ฌ์ค์ด ๊ฒฐ์ฝ ๊ณ ์ณ์ง์ง ์์ ๊ฒ์ด๋ผ๊ณ ๋งํ๊ณ ์๋ค๊ณ ์๊ฐํฉ๋๋ค.
@felixfbecker ์๋ฌด๋ ํฌ๋งท์ ๋ชจ๋ ๋นํธ๋ฅผ ๊ฐ์ง ํ ์ ์๋ค๊ณ
์๋ ํ์ธ์.
์ด ๊ธฐ๋ฅ์ ์ ์ฉํ๋ ค๋ฉด ์ธ์ด ์๋ฒ์์ ํน๋ณํ ํธ์งํด์ผํ๋ ํ์ผ์ ๋ฌด์์ ๋๊น? HTML ์ฉ ์ธ์ด ์๋ฒ๋ฅผ ์ดํด ๋ณด์์ง๋ง ์คํ์ผ๊ณผ ์คํฌ๋ฆฝํธ๋ก ์ ํํ ๋ฌด์์ํ๋์ง ์ ์ ์์ต๋๋ค.
https://github.com/Microsoft/vscode-html-languageservice/blob/master/src/parser/htmlScanner.ts ํ์ผ์ ๋ฐ๋ผ HTML์ด ์๋ ๊ฒ์ ํ ํฐ ํ๋ฅผ ๊ฑด๋ ๋ฐ๋ ๊ฒ์ฒ๋ผ ๋ณด์
๋๋ค.
https://github.com/Microsoft/vscode-html-languageservice/blob/master/src/htmlLanguageService.ts
ํ์ง๋ง CSS์ Javascript๋ ๋ฌด์์ํด์ผํ๋์ง ์ด๋ป๊ฒ ์๋๊น? ์ด ํ์ผ์ ๋ฐ๋ฅด๋ฉด ๊ทธ๋ค์ด ์ด๋ป๊ฒ ์๋ํ๋์ง ์ ํ ์ ์ ์์ต๋๋ค.
@aeschli PHP์ html ์ธ์ด ์๋ฒ๋ ๋ง์ vscode ๊ธฐ๋ฅ์ด ์ฌ๋ฌ ๊ณต๊ธ์๋ฅผ ๋ฑ๋ก ํ ์ ์๋ค๋ ์ ์ ๊ฐ์ํ ๋ ์ด๋ฏธ ํฉ๋ฆฌ์ ์ผ๋ก ์ ์๋ ํ ์ ์์ต๋๋ค. ๋๋ถ๋ถ์ ๊ฒฝ์ฐ ๊ฑฐ์ง์ด ์๋ ์ฒซ ๋ฒ์งธ ๊ณต๊ธ์ ๊ฒฐ๊ณผ๊ฐ ์ฌ์ฉ๋๊ฑฐ๋ ๊ฒฝ์ฐ์ ๋ฐ๋ผ ์ฌ๋ฌ ๊ฒฐ๊ณผ๊ฐ ์ฌ์ฉ๋ฉ๋๋ค. ๊ทธ๋์ ์ค๋ซ๋์ ๊ทธ๊ฒ์ ์ดํด ๋๋ ๊ฒ์ ๊ฐ ์๋ฒ ๋ฌด์๋ก - ์ธ๋ถ <?php ?>
PHP, ๋ด๋ถ์ HTML์ ๋ํ - ๊ทธ๊ฒ์ works.You ์ฌ๊ธฐ ํ๋์์ ๋ณผ ์ https://github.com/Microsoft/vscode / issues / 670 # issuecomment -310822851
๋ ์ํํ๊ฒ ์๋ํ๋๋กํฉ๋๋ค.
"files.associations": {
"*.myphp": ["php", "html"]
}
์ธ์ด ์๋ฒ ๋ฉ์์ํ ๋ ์๋ฒฝํ ์๋ฃจ์ ์ด ์์ต๋๊น? ์๋ง. ๊ทธ๋ฆฌ๊ณ ์ฌ๋ฌ ์ธ์ด๋ฅผ ํฌํจํ๋ ๊ฒ์ด ํน์ ์๋ฒ์ ์ฑ ์์ด ์๋๋ผ๋ ๋ฐ ๋์ํฉ๋๋ค. ์ด๋ค ํน์ ์ธ์ด๊ฐ ์ฌ์ฉ๋๊ณ ์๋์ง ์๋ณํ๋ ๊ฒ์ด ์๋ฒ์ ์ฑ ์์ด ์๋๋ผ๊ณ ์๊ฐํฉ๋๋ค. ์ฌ์ฉ์๋ ๋ฌธ์ ๋ฒ์๋ฅผ ์๋ณํด์ผํฉ๋๋ค. ํ์ง๋ง ๊ทธ ์ธ์๋ PHP์ HTML์ด ํจ๊ป ์๋ํ๋๋กํ๋ ๊ฒ์ด ๊ทธ๋ ๊ฒ ์ด๋ ต์ง ์๋ค๊ณ ์๊ฐํฉ๋๋ค.
@bmewburn ๊ทธ๋ค์ง ์ด๋ ต์ง ์๋ค๋ฉด ์ 2 ๋
ํ ์์ ์ ์ํด ๊ธฐ๋ค๋ฆฌ๊ณ ์์ต๋๊น?
@felixfbecker ๋ ๊ทธ๋ ๊ฒํ๊ธฐ๊ฐ ์ฝ์ง
@felixfbecker ๋ด ์๊ฒฌ ์์ ์ธ๊ธํ๋ฏ์ด ์ฌ๊ธฐ์๋ ์๊ตฌ ์ฌํญ์ด ์์ต๋๋ค. ๊ฐ ์ธ์ด ์๋ฒ๋ ํฌํจ ๋ ์ฝํ
์ธ ๋ฅผ ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์ ๊ทผ ๋ฐฉ์์ ์์ ๋กญ๊ฒ ์ ํํ ์ ์์ต๋๋ค. ์์ฒญ์ ๋ค๋ฅธ ์๋ฒ๋ก ์ ๋ฌํ๊ฑฐ๋ ์์ฒด ์ฒ๋ฆฌํฉ๋๋ค. ์ : ๋งํฌ ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ / ์๋น์ค ์ฌ์ฉ. ๊ทธ๊ฒ์ ๋ชจ๋ ์๋ฒ ๋๋ ์ฝํ
์ธ ์ ๊ธฐ๋ณธ ์ธ์ด๊ฐ ์ผ๋ง๋ ๋ฐ์ ํ๊ฒ ๊ฒฐํฉ๋์ด ์๊ณ ์๋ฒ๊ฐ ์ ๊ณตํ๋ ค๋ ์ฌ์ฉ์ ๊ฒฝํ์ ๋ฌ๋ ค ์์ต๋๋ค. ์ข
์ข
ํฌํจ ๋ ์ฝํ
์ธ ์๋ ๊ธฐ๋ณธ ์ธ์ด์ ์ปจํ
์คํธ๊ฐ ํ์ํ๋ฉฐ ์ด์ค์ผ์ดํ ๊ท์น์ ์ค์ํด์ผํฉ๋๋ค. ๊ฐ์ ๋ฌธ์ ๋ง ๋ณด๋ ์ธ์ด ์๋ฒ์๋ ์ฝ๊ฒ ์ ๋ฌํ ์ ์์ต๋๋ค. ์ด๊ฒ์ด ์ฐ๋ฆฌ๊ฐ HTML ์๋ฒ์์ ์ด๋ฌํ ์ ๊ทผ ๋ฐฉ์์ ๋ฉ์ด์ง๊ฒ ํ ์ด์ ์
๋๋ค.
๊ทธ๋ฌ๋ ์ด๊ฒ์ด PHP์ ๋ํ ์คํ ๊ฐ๋ฅํ ์ ๊ทผ ๋ฐฉ์์ด๊ณ PHP ์ธ์ด ์๋ฒ๊ฐ HTML ์๋ฒ๊ฐ ์ฃผ์ด์ง ๋ฒ์์ ๋ํ ์์ฒญ์ ์ฒ๋ฆฌํ๊ธฐ๋ฅผ ์ํ๋ค๋ฉด ๊ทธ๋ ๊ฒํฉ์๋ค. API๋ ๋ชจ๋ ๊ฑฐ๊ธฐ์ ์์ผ๋ฉฐ ํด๋ผ์ด์ธํธ ๋ฐ ์ฌ์ฉ์ ์ ์ LS ํ๋กํ ์ฝ์ ์ฌ์ฉํ์ฌ ๋ชจ๋ ์ํ ํ ์ ์์ต๋๋ค. .
html ์๋ฒ ๋ ์๋น์ค์ ๋์์ด ํ์ํ๋ฉด ์๋ ค์ฃผ์ธ์.
@aeschli ์ด์ค์ผ์ดํ ๊ท์น์ ์ข์ ์ ์ด๋ฏ๋ก ๋ฒ์ ๋์ ์ธ์ด ์๋ฒ๋ ์ด์ค์ผ์ดํ๋์ง ์์ ์ฝํ ์ธ ๋ฅผ ๋ค์ ๋ณด๋ด์ผํฉ๋๋ค. ๊ทธ๊ฒ ํด๊ฒฐ ๋ ๊น์? ์๋๋ฉด ์ ์์ ๋ํด ๋ค๋ฅธ ๋ฌธ์ ๊ฐ ์์ต๋๊น?
๊ทธ๋ฌ๋ ์ด๊ฒ์ด PHP์ ๋ํ ์คํ ๊ฐ๋ฅํ ์ ๊ทผ ๋ฐฉ์์ด๊ณ PHP ์ธ์ด ์๋ฒ๊ฐ HTML ์๋ฒ๊ฐ ์ฃผ์ด์ง ๋ฒ์์ ๋ํ ์์ฒญ์ ์ฒ๋ฆฌํ๊ธฐ๋ฅผ ์ํ๋ค๋ฉด ๊ทธ๋ ๊ฒํฉ์๋ค. API๋ ๋ชจ๋ ๊ฑฐ๊ธฐ์ ์์ผ๋ฉฐ ํด๋ผ์ด์ธํธ ๋ฐ ์ฌ์ฉ์ ์ ์ LS ํ๋กํ ์ฝ์ ์ฌ์ฉํ์ฌ ๋ชจ๋ ์ํ ํ ์ ์์ต๋๋ค. .
PHP ์ธ์ด ์๋ฒ๋ VS Code, sublime, neovim, atom-ide-php, Eclipse Che ๋ฑ์ ์ ์ธํ ๋ค๋ฅธ ๋ง์ ํด๋ผ์ด์ธํธ์์ ์ฌ์ฉ๋ฉ๋๋ค.์ด ๋ชจ๋ ๊ฒ์์ (๊ฒฐ๊ตญ) ์๋ ํ ์์๋ ์๋ฃจ์ ์ ์ด๋ป๊ฒ ๊ตฌ์ถ ํ ์ ์์ต๋๊น? ํด๋ผ์ด์ธํธ (LSP์ ์์ ์ด๋ฏ๋ก), ๋์์ ํน์ ๋ฐํ์ ์๊ตฌ ์ฌํญ (์ : neovim PHP ๊ฐ๋ฐ์๋ PHP๊ฐ ์ค์น๋์ด ์์ง๋ง ๋ฐ๋์ NodeJS๋ ์๋)๊ณผ ํจ๊ป ํน์ HTML (๋ฐ CSS, JS ...) langservers๋ฅผ ๋ฒ๋ค๋งํ์ง ์๋๋กํฉ๋๋ค. ์ฌ์ฉ์๋ ์๋ฒ ๋๋ ์ธ์ด์ ์ฌ์ฉํ ์ธ์ด ์๋ฒ๋ฅผ ๊ฒฐ์ ํ ์ ์์ต๋๊น? LSP์ ๋ํ ๊ฐ๋ ฅํ ์ฃผ์ฅ์ด ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ๋ชจ๋ ์ธ์ด๋ฅผ์ํ ๋ณดํธ์ ์ธ ๋ฐฉ์์ผ๋ก์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๋ค๋ฉด ๋งค์ฐ ๊ธฐ์ฉ๋๋ค.
@aeschli @felixfbecker ๊ทธ๋ ๋ค๋ฉด ๋ ๋ค์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ค๊ณ ์๋ ํ ๊ฒ์ ๋๊น? ๊ทธ๊ฒ์ ๋๋์ต๋๋ค.
์ด๊ฒ์ ๊ฑฐ์ ๋ชจ๋ PHP ์ฝ๋๊ฐ ์ ๋ง๋ก ํ์๋กํ๋ ๊ธฐ๋ฅ์
๋๋ค. ๊ทธ๋ฌ๋ ์ ๋ฐ, ์ฐ๋ฆฌ๊ฐ _ ์ฌ๋ฐ๋ฅธ _ ๋ฐฉ์์ผ๋ก ๋ง๋ค ์ ์๋ค๊ณ ํด์ ๋ฌด์ํ์ง ๋ง์ญ์์ค.
๋น๋
ผ๋ฆฌ์ ์ด๊ฑฐ๋ ์ถ์
ํ ํด๊ฒฐ์ฑ
์ด ์๋๋ผ๋ ์ฐ๋ฆฌ๊ฐ ๋ฏธ๋ฃจ๊ณ ์๋ฌด๊ฒ๋ํ์ง ์๊ณ ์ผ์์ ์ผ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค.
์๋ ๋ค๋ฅธ ์ด์ ํธ์ง ๊ธฐ์ฉ์ผ๋ก ์์ฑ๋ ํ์ฅ ํ๋ก๊ทธ๋จ๊ณผ ๊ฐ๋ฅํ ํ ํธํ๋๊ธฐ๋ฅผ ์ํ๊ธฐ ๋๋ฌธ์ ์๊ฐ์ด ์ฑ์์ ธ ์๋ค๋ฉด ํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅํ ๊ฒ๋ณด๋ค ๋ ๋์ ์๋ก์ด ๊ต์ฐจ ํธ์ง๊ธฐ ํ์ค์ ์์ฑํ๋ ๊ฒ์ ๊ณ ๋ คํด์ผํฉ๋๋ค. Microsoft๊ฐ ์ด์ ์ ๊ฒฝ๊ณ์์ ๋ฒ์ด๋ ๋ค๋ฅธ ๊ทธ๋ฃน๊ณผ ํ๋ ฅํ์ฌ์ด ํธ์ง๊ธฐ์ ๋ค๋ฅธ ํธ์ง๊ธฐ ๋ชจ๋์์ ์ฌ์ฉ๋๋ ํ์ค ์ธ์ด ์๋ฒ ๋ชจ๋ธ์ ๊ตฌ์ถํ์ง ์์ ๊ฒ๊ณผ๋ ๋ค๋ฆ ๋๋ค. ํผํฉ ์ธ์ด ์๋๋ฆฌ์ค๋ฅผ ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ๊ณผ ๊ด๋ จํ์ฌ ๋์ผํ ์์ ์ ๋ค์ ์ํํ๋ฉด๋ฉ๋๋ค.
@felixfbecker ์ php-intellisense ํ์ฅ ๋๋ ๋ด vscode-jinja ํ์ฅ๊ณผ ๊ฐ์ ํผํฉ ์ธ์ด ํ์ฅ์ด์ด ๋ฌธ์ ๋ก ์ธํด ์ฐจ๋จ๋๋ ๊ฒ์ ๋ถ๋ช ํฉ๋๋ค. ํต์ฌ ์ธ์ด๋ก ํ ์ ์๋ค๋ฉด ํ๋ฅญํ์ง๋ง ์ปค๋ฎค๋ํฐ๊ฐ ์ฝ๊ฒ ํ์ฅ ํ ์ ์๋ค๋ฉด ์ผ๋ฐ์ ์ผ๋ก ์ ์ฒด ํธ์ง์์๊ฒ ์ข์ง ์์ ๊ฒฝํ์ ์ค ๊ฒ์ ๋๋ค. ์ด ์์ ์์์ด ๋ฌธ์ ๋ ์ปค๋ฎค๋ํฐ ์์ฒด๊ฐ ์ค์ ๋ก ๋ค๋ฅธ ์ฌ๋๋ค์๊ฒ ๋ค๋ฅธ ๊ณณ์ผ๋ก ๊ฐ๋ผ๊ณ ๋งํ๊ณ ์์ ์ ๋๋ก ์ถฉ๋ถํ ์ค๋ ์ง์๋์์ผ๋ฉฐ, ์ ๋ ๋๊ฐ์ดํ๊ณ ์์ต๋๋ค.
@wholroyd ๋ ๋์ํ์ต๋๋ค. ์ ๋ ์ฌ๋๋ค์๊ฒ์ด IDE์ ๋ํด ์ฌ๋ผ์ด์ค ๋นต ์ดํ ๊ฐ์ฅ ์ข์ ๊ฒ์ด๋ผ๊ณ ๋งํ๊ณ ์์๊ณ ์ด์ ๋ ์ฌ๋๋ค์ ์ ๊ทน์ ์ผ๋ก ๋ฉ์ด์ง๊ฒํ๊ณ ์์ต๋๋ค. ๋ด ํ๋ก์ ํธ ์ค ํ๋๋ฅผ ํตํฉ ํ ๊ฒ์ ํํํฉ๋๋ค.
@aeschli html ์ธ์ด ์๋ฒ์์ ๋ค์์ ๊ณ ๋ ค ํ์๊ฒ ์ต๋๊น?
phtml
๋ฅผ ์ฒญ์ทจํ๊ธฐ์ํ ์ถ๊ฐ languageId์
๋๋ค. ์ด๊ฒ์ php์ html ํ์ฅ์ด๋ค์ ์์๋ ๊ณต์ ID์ ๊ฒฐํฉ ๋ textmate ๋ฌธ๋ฒ์ ์ ๊ณตํฉ๋๋ค.<\?(php|=)?>
, \?>
๋ด์ ๋ชจ๋ ํญ๋ชฉ์ ๋จ์ผ ์๋ ๋ซ๊ธฐ ํ๊ทธ๋ก ์ฌ์ฉํ๋๋ก html ์ธ์ด ์๋ฒ ์ค์บ๋๋ฅผ ์์ ํฉ๋๋ค.๋ณ๋์ php ๋ฐ html ํ์ฅ์ ๋ค์ ๊ณต๊ธ์๋ ์๋ฒ์ ์๋ฒ ๋ฉํ๊ฑฐ๋ ํด๋ผ์ด์ธํธ๋ฅผ ํดํนํ์ง ์๊ณ ๋ ํจ๊ป ์ ์๋ํฉ๋๋ค.
ํ์์ ์ง์ ํ๊ณ ์ด๋ฆ์ ๋ฐ๊พธ๋ ค๋ฉด ์ผ๋ถ ํดํน์ด ํ์ํ๋ฉฐ ์ฌ์ฉ์๋ ๋ค๋ฅธ ํ์ฅ์๋ก๋ณด๊ธฐ ํ์ผ์ ์ด๋ฆ์ ์ง์ ํ๊ณ php๊ฐ ์๋ phtml๊ณผ ์ฐ๊ฒฐํด์ผํฉ๋๋ค. ๊ทธ๋ฌ๋ ๋๋ ์ด๊ฒ์ด ์ต์ํ์ ๋ ธ๋ ฅ๊ณผ ์ํ์ผ๋ก ๊ฝค ์ข์ ์์์ด ๋ ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค.
@bmewburn ์, ์ข์ ๊ฒ ๊ฐ๋ค์. ํ ์ ์์ต๋๋ค. 'phtml'์ธ์ด์ ์์ด๋์ด๋ ๋ฌด์์ ๋๊น? ํ๋ก๊ทธ๋๋ฐ ๋ฐฉ์์ผ๋ก ์์ฒญ์ ์ ๋ฌํ๋ ๋ฐ ์ฌ์ฉ ํ์๊ฒ ์ต๋๊น?
@aeschli ๋ ์์ฒญ์ ์ ๋ฌํ์ง ์์ต๋๋ค. ์์ด๋์ด๋ html ์๋ฒ๊ฐ phtml์ ๋ํ ๊ณต๊ธ์๋ฅผ ๋ฑ๋กํ๊ณ php ์๋ฒ๊ฐ phtml์ ๋ํ ๊ณต๊ธ์๋ฅผ ๋ฑ๋กํ๊ณ vscode๊ฐ ๋ณ๋์ ์๋ต์ ์ฒ๋ฆฌํ๋๋กํ๋ ๊ฒ์ ๋๋ค.
์์ ๊ณต๊ธ์๋ ๋ชจ๋ ์๋ต์ด ๋ณํฉ๋์๊ฑฐ๋ ๊ฑฐ์ง์ด ์๋ ์ฒซ ๋ฒ์งธ ์๋ต์ด ์ฌ์ฉ๋์์ต๋๋ค. ๋ฐ๋ผ์ ๋ณ๋์ html ๋ฐ php ์๋ฒ๊ฐ ์ดํดํ์ง ๋ชปํ๋ ๋ฒ์์ ๋ํ ๊ฒฐ๊ณผ๋ฅผ ์๋ํ๊ณ ๋ฐํํ์ง ์๋ ํ ๋ชจ๋ ์๋ํฉ๋๋ค. phtml id๋ ๋ ์ธ์ด ์๋ฒ ๋ชจ๋์ ๊ณตํต์ ์ธ ๊ฒ์ ๋๋ค. ์ฌ๋ฌ ์ธ์ด ํ์ผ ์ฐ๊ฒฐ์ ๊ฐ๋ ๊ฒ์ด ๋ ์ข์ ์๋ ์์ง๋ง ํจ์ฌ ๋ ๊ด๋ จ ๋ ์ ์์ต๋๊น? ๋ํ php์ phtml์ ๋ณ๋๋ก ์ ์งํ๋ฉด php ์ ์ฉ ํ์ผ์ ๋ํด html ์๋ฒ์ ์์ฒญ์ ๋ณด๋ด๋ ๊ฒ์ ํผํ ์ ์์ต๋๋ค.
"files.associations": {
"*.php": ["php", "html"]
}
์ง๊ธ์ html ๋ฐ php doc ์ ํ๊ธฐ๋ก ๋ด PHP ํ์ฅ์ ๋ฑ๋กํ์ง๋ง์ด ์ค์ ์์ html ์ธ์ด ๊ตฌ์ฑ์ ์ฌ์ ์ํ๋ ๊ฒ์ ๋ํด์ฃผ์ํด์ผํฉ๋๋ค.
ํ์ผ ์ฐ๊ฒฐ์ ๋จ์ผ ์ธ์ด ID์๋ง ํ ๋น ๋ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ธ์ด ์๋ฒ๋ ์ํ๋ ์ธ์ด์ ๋ฌธ์๋ฅผ ๋ฌด๋ฃ๋ก ์ ๊ณตํฉ๋๋ค.
๊ฐ๋ฅ์ฑ 1 : HTML๋ php
๋ฑ๋กํ๊ณ ๋ชจ๋ ์์ฒญ์ โโ์ฐธ์ฌํ์ง๋ง <?php .../?>
์ธ๋ถ์ธ ๊ฒฝ์ฐ์๋ง ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํฉ๋๋ค.
๊ฐ๋ฅ์ฑ 2 : ๋ง PHP ์ธ์ด๋ฅผ ์๋ฒ์ ๋ฑ๋ก php
, ๋ชจ๋ ์์ฒญ์ ์ ๋ฌํฉ๋๋ค <?php .../?>
๋ฐ๋ ๋ฑ๋ก ๋ ๋ชจ๋ ์ธ์ด๋ฅผ ์๋ฒ์ phtml
์ธ์ด๋ฅผ.
๋ฐ๋ผ์ ์ ๋ฌ์ commands.executeCommand
?
@bmewburn # 36396์ ๋ง๋ค์์ต๋๋ค. ํด๋น ํญ๋ชฉ์ ๋ํด ๋
ผ์ํ๊ฒ ์ต๋๋ค.
์, ์ฌ๊ธฐ ์์ ํฉ๋๋ค.
PHP ์ฉ html intellisense์ ๊ดํ ๋ชจ๋ ์ ๋ฐ์ดํธ
์๋ ํ์ธ์, PHP์ HTML ์ฝ๋ฉ์ ํผํฉํ๋ ๋ฐฉ๋ฒ์ด ์์ต๋๊น? HTML ๊ฐ์กฐ ํ์๊ฐ PHP ๋ฌธ์์์ ์ฌ๋ฐ๋ฅด๊ฒ ์๋ํ์ง ์์ต๋๋ค :-(
๊ฑฐ์ 2 ๋ ์ด ์ง๋ ํ์๋ ์ฌ์ ํ ์ ์ ํ ํด๊ฒฐ์ฑ ์ด์๋ ๊ฒ ๊ฐ์ต๋๊น?
์ด ๋ฌธ์ ๋๊น์ง ํด๊ฒฐ๋ฉ๋๊น?
์๋์, ์ฌ์ ํ ๋ถ๊ฐ๋ฅํฉ๋๋ค. ๋ถํํ๋ ์ ๋์ด ๋ฌธ์ ๋ก ์ธํด ST3๋ก ๋์๊ฐ์ต๋๋ค. ์ธ์ ๊ฐ ๊ทธ๋ค์ด์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ๋ด๊ฐ ๋์์ฌ ์ ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
@bmewburn ํ์์ ์ธ ์ํ์ ๋๋ค. ์ด๊ฒ์ ์ค๋ซ๋์ ํ์ํ์ต๋๋ค. ๊ฐ์ฌํฉ๋๋ค. ์ด์ VSCode๋ก ์ ํํ์ง ์์ ์ด์ ๊ฐ ์์ต๋๋ค.
@ kilevvri1 ์ค์ ์ ๊ณต์ ํ์ญ์์ค. ๋๋ฅผ ์ํด ์ผํ์ง ..
@ expo87 ๊ธฐ๋ณธ PHP Intelephense ์์ฒญ ์ค์ ์ ์ฌ์ฉํ์ต๋๋ค.
"php.suggest.basic": false
์์ง ๋ค๋ฅธ ์ค์ ์ ์ฌ์ฉํ์ง ์์ต๋๋ค.
Bummer. ๋ฐฉ๊ธ VSCode ํ๊ฒฝ์ ์ค์ ํ๊ณ ๋ชจ๋ ํ๋ฌ๊ทธ์ธ์ ์ค๋นํ์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ ๋๋ ์ด๊ฒ์ ๋ง๋ฌ์ง๋ง ์ฌ์ ํ ์์ ๋์ง ์์์ต๋๋ค.
VSCode๋ฅผ ์ ๋ง ์ข์ํ๊ธฐ ์์ํ๊ธฐ ๋๋ฌธ์ ์ํ๊น์ด ์ผ์ด์ง๋ง ์ด์ Sublime Text๋ก ๋์ ๊ฐ์ผํฉ๋๋ค.
@DannyMexen PHP Intelephense ํ์ฅ์ ์ฌ์ฉํด๋ณด์ญ์์ค
@ kilevvri1 ์ด ํ์ฅ์ PHP๋ฅผ ์ค์นํด์ผํฉ๋๋ค. ๋๋ฅผ ์ํด ์์คํ PHP๋ ํ์ํ์ง ์์ต๋๋ค! ๋ด๊ฐ ์ ์ด๋ฌ๋ ๊ฑฐ์ง? ์ผ๋ฐ์ ์ธ ํผํฉ ๊ตฌ๋ฌธ์ PHP์ ๋ค๋ฅธ ์ธ์ด์ ๋๊น? ์ด ์ต์ ์ด ๊ธฐ๋ณธ์ ์ผ๋ก ์๋ํ์ง ์๋ ์ด์ ๋ ๋ฌด์์ ๋๊น?! Sublime Text ์ค์น ํ์ผ 8,5 Mb-ํผํฉ ๊ฐ์กฐ ํ์๊ฐ ์ ์๋ํฉ๋๋ค. CodeLite ์ค์น ํ์ผ 50 Mb-ํผํฉ ๊ฐ์กฐ ํ์๊ฐ ์ ์๋ํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ PHP๋ฅผ ์ค์นํ ํ์๊ฐ ์์ต๋๋ค!
์ด ๊ธฐ๋ฅ์ VS Code์์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ ๊ณต๋์ด์ผํ๋ค๋
@ kilevvri1 , ์ด๋ด, ์ด๋ป๊ฒ ์ง๋ด? ๋๋ ์๋ํ์ง ์์๋ค.
๊ทธ๋ฌ๋ ์ฌ์ ํ .php ํ์ผ์์ HTML ํ์์ ์ง์ ํ ์ ์์ต๋๋ค. ๋ํ ์ด๋ฌํ ๊ธฐ๋ฅ์ด ์ฆ์ ์ฌ์ฉ ๊ฐ๋ฅํด์ผํ๋ค๋ ๋ฐ ๋์ํฉ๋๋ค.
๋ค๋ฅธ ๋ชจ๋ ๊ฒ์ ๊ด์ฐฎ์ง ๋ง ๋ด ๊ฒฝํ์ ๋ง์น๋ ํ ๊ฐ์ง๋ฟ์ ๋๋ค. ํ์ฌ ์ ์ฑ ์ ๋ฐ๋ผ ๋ด ์ฝ๋์ ํ์์ ์ ์ง์ ํ๋ ๊ฒ์ด ๋งค์ฐ ์ค์ํฉ๋๋ค. ๋ฏธ๋๋ฅผ ๋ฐ๋ผ๋ ๊ฒ์ ๋๋ค.
๋ฒ๊ฑฐ๋กญ์ง ๋ง ํฐ ํ์ผ์ ๊ฒฝ์ฐ ํ์ผ ์ด๋ฆ์ .html๋ก ๋ฐ๊พธ๊ณ ์์์ ์ง์ ํ ๋ค์ ๋ค์ .php๋ก ์ด๋ฆ์ ๋ฐ๊ฟ๋๋ค.
๋๋ VSCode๋ฅผ ์ข์ํ๊ณ ์ผ์ฃผ์ผ์ ์ค ๊ฒ์ ๋๋ค. ์์ ์ด ์๋นํ ๋๋ ค์ง๋ฉด ST 3์ผ๋ก ๋์๊ฐ๋๋ค.
ํ์ฅ ๊ธฐ๋ฅ์ด ์๋ํ๊ธฐ ์ํด PHP๋ฅผ ์ค์นํ๋ ๊ฒ์ ๋ํด ๋ถํํ๋ ์ฌ๋๋ค์ ์ํด, ๋ก์ปฌ ์ปดํจํฐ์ PHP๊ฐ ์ค์น๋์ด ์์ง ์์ต๋๊น? ํ ์คํธํ๊ธฐ ์ ์ ์๋ฒ์ ์ฝ๋๋ฅผ ๋ฃ๊ณ ์ด ์์ ์ ๋ฐ๋ณตํด์ ์ํํ๋ ๋ฐ ์๊ฐ์ ๋ญ๋นํ๊ณ ์์ต๋๊น?
PHP๋ ๋ก์ปฌ์ ์ค์น๋์ด์ผํฉ๋๋ค. ์ฑ์ด ๋ก์ปฌ์์ ์คํ๋์ง ์๋ ๊ฒฝ์ฐ ํด๊ฒฐํด์ผ ํ ๊ฐ๋ฐ ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
@TheColorRed ๋ ๋ก์ปฌ์์ ๋ด ์ฝ๋์ ๊ฒฐ๊ณผ๋ฅผ ๋ณผ ํ์๊ฐ ์์ผ๋ฉฐ ์๋ฒ์ ํ์ผ์ ์ ๋ก๋ ํ ํ. WinSCP ๋ฐ ST ์ฌ์ฉ-๊ฐ๋ณ๊ณ ๋น ๋ฅธ ์์ ์๋. ๊ทธ๋ฆฌ๊ณ ๋น์ฐํ ๋ด๊ฐ ๋ญํ๋์ง ์๋ค :-)
@TheColorRed ๋น์ ์ ์ธํฐ๋ท์์ ์๊ฐ์ ๊ฐ์น์ ๋ํด ์๋ชป๋๊ณ ์๋์ ์ผ๋ก ๊ณต๊ฒฉ์ ์ธ ๋๊ตฐ๊ฐ๋ฅผ ๋ฐ๊ฒฌํ์ต๋๋ค.
์ด ๊ธฐ๋ฅ์ด ๋ฐ๋ก ์ฌ์ฉํ ์ ์๊ธฐ๋ฅผ ๋ฐ๋ผ์ง ๋ง ์ฌ์ค์ ๊ทธ๋ ์ง ์์ต๋๋ค. VSCode ํ์ ์ด๊ฒ์ ๋ฌธ์ ๊ฐ๋์ง ์๊ฑฐ๋ ๋งค์ฐ ๋ฎ์ ์ฐ์ ์์๋ก ๊ฐ์ฃผํฉ๋๋ค. @bmewburn ์ ๋ด๊ฐ ๋์์ ๋ํด ๋ง์กฑํ๋ PHP Intelephense ํ์ฅ์ ๋ง๋ค์์ต๋๋ค.
@ expo87 ์ํฌ ํ๋ก์ฐ๋ฅผ ์ค๋ช ํ ํ์๊ฐ ์์ต๋๋ค. ์ฐ๋ฆฌ ๋ชจ๋๋ ์กฐ๊ธ ๋ค๋ฅด๊ฒ ์ผ์ํฉ๋๋ค.
์ด๊ฒ ๋๋ฌธ์
๋๋ ํ๋ช
ํ๊ฒ ์ฌ์ฉํ๋ฏ๋ก ๋ชจ๋ HTML์ PHP ์ฝ๋ ๋ด๋ถ๊ฐ ์๋ tpl ํ์ผ๋ก ์ด๋ํ ์ ์์ต๋๋ค.
๋ด ์ฝ๋๋ฅผ ๋ ๊น๋ํ๊ฒ
@DannyMexen PHP ํ์ผ ๋ด์์ HTML ํ์์ ์ง์ ํ๋ ๋ฐ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. settings.json์์ "intelephense.formatProvider.enable": false
ํ์์ PHP Intelephense๋ฅผ ๋๋๋ค.
๋ด๊ฐ ์ ๋ง๋ก ์ํ๋ ๊ฒ์ ์๋ ์์ฑ ์ ์์ ํธ๋ฆฌ๊ฑฐํ์ง ์๋ >
๋ฟ์
๋๋ค (๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ ๋ฌด์ํ๊ธฐ ์ํด ์ํํ๋ ์์
์ ์ค์งํ๊ฒ ํจ). HTML ์์๋ฅผ ๋ซ๊ณ ๋ค์ ์ค๋ก ์ด๋ํ๊ณ ์ถ์ ๋ ์ง์ฆ๋์ง๋ง "์ค์๋ก"์ํฐ๋ฅผ ์น๋ฉด ์ ์ค ๋์ ์ญ์ ํด์ผํ๋ ์ฐ๋ ๊ธฐ๋ก ๋๋ฉ๋๋ค. ์์ ์ ์ ์ค ์ด๋ ๊ฒ๋์ด ํน์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ง ๋ชปํ๋ ๊ฒ ๊ฐ์ต๋๋ค.
์ด๋ฅผ ์ํด ํ์ํ ๊ฒ์ https://github.com/Microsoft/language-server-protocol/issues/138์
๋๋ค.
@jrieken ๋น์ ์ด ์ ์ํ ์ค๊ฐ ์๋ฃจ์
์ด ์กฐ๋ง๊ฐ ๋ฒ์ ๋ด์ ์๋์ง์ ๋ํ ์๊ฒฌ์ ์ค ์ ์์ต๋๊น?
๋ค์ค ๋ฌธ์ ํธ๋ฆฌ๊ฑฐ๋ฅผ ๊ตฌํํ ์๋ ์์ง๋ง ์๋ฆฌ๋งํผ ์ฌ์ํ์ง๋ ์์ต๋๋ค. ๊ทธ๋๊น์ง ํ์ฅ ํ๋ก๊ทธ๋จ์ ํธ๋ฆฌ๊ฑฐ ๋ฌธ์์ ์ ์ฌ์ ์ํ์ค์์ ๋ง์ง๋ง ๋ฌธ์๋ฅผ ์ฌ์ฉํด์ผํฉ๋๋ค.
@ kilevvri1 ์ฃผ์ฌ์๊ฐ ์์ต๋๋ค. ๋๋ ๋น์ ์ ๊ฒ์๋ฌผ์ ๋ฐ๋์ง๋ง ์์ฉ์ด ์์ต๋๋ค. ๋ชจ๋ ์ค์ ์ ๋ณผ ์ ์์ต๋๊น? ๋ฌธ์ ๊ฐ๋์ง ์๋๋ค๋ฉด ์ค์น ํ ํ์ฅ ํ๋ก๊ทธ๋จ ๋ชฉ๋ก ์ผ ๊ฒ์ ๋๋ค.
๋ด๊ฐ ์ป์ ๊ฐ์ฅ ๊ฐ๊น์ด ๊ฒ์ ํ์ผ ์ฐ๊ฒฐ์ ๋ณ๊ฒฝํ๊ณ beautify๋ก ๋์งํ๋ ๊ฒ์ด์์ง๋ง ๋์์ด๋์ง ์์์ต๋๋ค.
์ด์จ๋ ๋ชจ๋ ๊ฐ์ฌํฉ๋๋ค. ์ด๊ฒ์ ๋ํ ์ง์ ์ ์ธ ๋๋ต์ด์๋ ๊ฒ ๊ฐ์ต๋๋ค.
@WraithKenny ๋ https://github.com/felixfbecker/php-language-server/pull/527 ์์ ์์ ๋์์ต๋๋ค.
๋ช ์๊ฐ ๋์ ๋ ธ๋ ฅํ์ง๋ง์ด ์ผ์ด ์๋ํ์ง ์์ต๋๋ค. @bmewburn์ด ์ ์ํ ๊ฒ์ฒ๋ผ "PHP Intelephense"ํ๋ฌ๊ทธ์ธ์กฐ์ฐจ๋ ์๋ํ์ง ์์ต๋๋ค. 'php'๋ฅผ ์ ๋ ฅํ๊ณ ํญ์ ๋๋ฅด๋ฉด ๋ค์๊ณผ ๊ฐ์ด ํ์ฅ๋ฉ๋๋ค. http://s.zeshanahmed.com/a_1FC81B2B.png
์ด๊ฒ์ PHP์์ HTML์ ์ฌ์ฉํ ๋ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋ฅ์ ๋๋ค. ์ ์ด๋ WordPress ํ ๋ง ๊ฐ๋ฐ์๋ก์.
๋์์์ VS Code๋ฅผ ๋ค์ ํ์ธํ ์ ์์ง๋ง ์ง๊ธ์ Sublime์ผ๋ก ๋ค์ ์ ํํฉ๋๋ค. ์ฒ์์๋ VS Code๊ฐ ์ผ๋ง๋ ๊ฐ๋ ฅ ํด ๋ณด ์๋์ง ๋ง์์ ๋ค์์ง๋ง ์ด๋ฌํ ์์ ๋ฌธ์ (๋๋ ๊ธฐ๋ฅ ๋ถ์กฑ)๋ก ์ธํด ๋ง์ PHP / WP ๊ฐ๋ฐ์๊ฐ ๋ฉ๋ฆฌ ๋จ์ด์ ธ ์์ต๋๋ค.
aaand ์ ๋ @zeshanshani ๋ฐ @DannyMexen ๊ณผ ํจ๊ป ์์ต๋๋ค. PHP ํ์ผ์ html์ ์์ฑํ ์ ์๋ค๋ฉด์ด ํธ์ง๊ธฐ๋ ๋ฐ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค.
๋. ๋๋ ๊ทธ๊ฒ์ ๋๋ฌด ์ข์ํ์ง๋ง (๊ฒ๋ณด๊ธฐ์ ๋จ์ ํด ๋ณด์ด๋) ๊ฒ์ด ๋๋ฅผ ์ธ๋ชจ ์๊ฒ ๋ง๋ค์์ต๋๋ค.
๋ด๊ฐ ์ฌ๊ธฐ์ ์ฝ๊ฐ ํ๋ ธ์ ์๋ ์๊ณ ,์ด ๋ฌธ์ ๋ ๋ด๊ฐ ์ธ๊ธ ํ ๊ฒ์ด ์๋๋๋ค. ์ด์จ๋ , ๋ด๊ฐ ์ธ๊ธํ๋ฏ์ด VS Code๊ฐ ๋์๊ฒ ์ผ๋ง๋ ๊ฐ๋ ฅํ์ง๋ฅผ ์ฌ๋ํ๊ธฐ ๋๋ฌธ์ ๋ ํ์ธํ๊ณ ๋ฌธ์ ์ ๋ํ ๋งค์ฐ ์ฌ์ด ํด๊ฒฐ์ฑ ์ ์ฐพ์์ต๋๋ค.
๋ด๊ฐ ์ง๋ฉด ํ ๋ฌธ์ ๋ <?php ?>
๋ธ๋ก ๋ฐ์ ์๊ณ ๋ฐ๋ก ๊ฐ๊ธฐ๋ก PHP ๋ธ๋ก์ ์ด๋ ค๊ณ ํ๋ฉด ์๋ํ์ง ์๋๋ค๋ ๊ฒ์
๋๋ค.
๊ทธ๋์ PHP ๋ธ๋ก์ ํ์ฅํ๊ธฐ ์ํด ์ฌ์ฉ์ ์ ์ HTML ์ค ๋ํซ์ ๋ง๋ค์์ต๋๋ค. ์ง๊ธ์ ๋ค์ 3 ๊ฐ์ ์ค ๋ํซ์ ๋ง๋ค์์ต๋๋ค.
<?php ?>
๋ก ํ์ฅ๋๊ตฐ๊ฐ ๊ทธ๊ฒ์ ์ฐพ๊ณ ์๋ค๋ฉด ๋ค์์ ์ค ๋ํซ ์ฝ๋์ ๋๋ค.
https://gist.github.com/zeshanshani/ccbfe8c0177a2513f0a92d0747349f50
๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ด ๊ทธ ๊ฒฐ๊ณผ์ ๋๋ค.
์ฌ๊ธฐ์ ์ ์ผํ ๋ฌธ์ ๋ ๋ฒ์๋ฅผ ์ ์ ํ ์์๋ Sublime Text์ ๋ฌ๋ฆฌ .html
ํ์ผ์ ์ค ๋ํซ์ ํ์ฅํ์ฌ ํน์ ์ค ๋ํซ์ด PHP ์ธ ๊ฒฝ์ฐ์๋ง ํ์ฅ๋๋ค๋ ๊ฒ์
๋๋ค. http://s.zeshanahmed.com/a_1FCD4A29.png
Btw, ๋๊ตฌ๋ ์ง emmet.triggerExpansionOnTab
์ค์ ์ ํ์ฑํํ๋ ค๊ณ ํ์ต๋๊น? PHP ๋ฌธ์์ด ๋ด ํญ ์ง์์์ emmet HTML ํ์ฅ์ ํ์ฑํํฉ๋๋ค.
์ด ์ค์ ์ ์ง์ ํ๋ ค๋ฉด ์ฌ์ฉ์ ์ค์ ์ผ๋ก ์ด๋ํ์ฌ ๋ค์ ํ์ ์ถ๊ฐํ์ญ์์ค.
"emmet.triggerExpansionOnTab": true
์คํฌ๋ฆฐ ์ท : http://s.zeshanahmed.com/a_1FD14980.png
๊ฒฐ๊ณผ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๋์๊ฒ (๊ทธ๋ฆฌ๊ณ ์๋ง๋ ๋ค๋ฅธ ์ฌ๋๋ค์๊ฒ) ์คํ ๊ฐ๋ฅํ ์๋ฃจ์ ์ ์ฐพ์์ต๋๋ค.
Jun Han์ "_Auto Close Tag_"ํ์ฅ ํ๋ก๊ทธ๋จ์ ์ค์นํ์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ ๋ด ์ค์ ์์ ๋ค์์ ์ถ๊ฐํ์ต๋๋ค.
"php.suggest.basic": false,
"auto-close-tag.SublimeText3Mode": true,
์ด์ .php ํ์ผ์ ์๊ณ <?php ?>
ํ๊ทธ ์ธ๋ถ์์๋ ๋์ html ํ๊ทธ ์
๋ ฅ์ ๋ง์น ํ $_cookie
๊ฐ ํ์๋์ง ์๊ณ </
ํ๋ฉด ์๋์ผ๋ก ์๋ฃ๋ฉ๋๋ค. ์ ์ ํ ๋ซ๋ ํ๊ทธ.
๋ฐ๋ผ๊ฑด๋, ์ด๊ฒ์ ๋์ ๊ฐ์ ๋ฌธ์ ๋ฅผ ๊ฒช๊ณ ์๋ ๋ค๋ฅธ ์ฌ๋์๊ฒ ๋์์ด๋๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
@Chenzo ๊ฐ ํด๊ฒฐ ํ์ ์ฝ๋๋ฅผ ์ํํฉ๋๊น? Ctrl
+ Shift
+ I
๋ฅผ ๋๋ฅด๋ฉด PHP์ HTML ์ฝ๋๊ฐ ๊ทธ์ ๋ฐ๋ผ ํ์์ด ์ง์ ๋๊ฑฐ๋ ๋ค์ฌ ์ฐ๊ธฐ๋ฉ๋๊น?
@DannyMexen ์ผ์ ... ์๋. Altho, VScode์ ๊ธฐ๋ณธ ๊ธฐ๋ฅ์ ๋๊น? ๋ด beautify ํ๋ฌ๊ทธ์ธ์กฐ์ฐจ๋ .PHP ํ์ผ์์ HTML๋ก ๋ฌด์์ ํด์ผํ ์ง ๋ชจ๋ฅด๋ ๊ฒ ๊ฐ์ต๋๋ค.
@Chenzo ์๊ฒ ์ต๋๋ค . ์, ์ฌ๊ธฐ๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค. ์ด๊ฒ์ VSC๋ฅผ ๋ ์ ํ ์คํธ ํธ์ง๊ธฐ๋ก ์ฌ์ฉํ๊ธฐ ์ํด ์์ ํด์ผํ๋ ์ ์ผํ ๊ธฐ๋ฅ์ ๋๋ค.
ํธ์ ๋ด์ ๊ฐ๊ธฐ
PHP Intelliphense๊ฐ ์๋ํ์ง ์๋ ๊ฒฝ์ฐ
vscode ๋ฐ PHP Intelliphense๋ฅผ ๋ค์ ์ค์นํ์ญ์์ค.
๋๋
everedit๋ฅผ ์ฌ์ฉํด๋ณด์ญ์์ค. ์ข์ ํธ์ง๊ธฐ์ด์ง๋ง IDE๋ ์๋์ง๋ง Windows ๋ง ์ฌ์ฉํ์ญ์์ค.
@iscraft ์ ์์ ๊ฐ์ฌํ์ง๋ง Linux๋ฅผ ์คํ ์ค์ด๋ฉฐ ๋ชจ๋ PHP ํ๋ก์ ํธ์ ST 3์ ์ฌ์ฉํ๊ณ ์์ต๋๋ค.
๋ฐ๋ผ์ ์ฌ๋ฐ๋ฅด๊ฒ ๋ฐ๋ฅด๊ณ ์๋ค๋ฉด ์ฐจ๋จ ๋ฌธ์ ๋ LSP (์!)์์ ํด๊ฒฐ๋๊ณ ํ ๋ฆญ์ค์ ์ธ์ด ์๋ฒ (์!)์์๋ ํด๊ฒฐ๋์ง๋ง ์์ง VS ์ฝ๋ ๋ด๋ถ์์์๋ ํด๊ฒฐ๋์ง ์์์ต๋๋ค.
ํญ์ ์กด์ฌํ๋ <?php
์๋ ์์ฑ๊ณผ ๊ด๋ จ๋ ์์ ๊ด๋ จ ๋ฌธ์ ๊ฐ VS Code Insiders์ ์์ผ๋ฉฐ Felix์ Intellesense ํ๋ฌ๊ทธ์ธ์ด ํ์ฑํ๋์ด ์์ผ๋ฏ๋ก VS Code์์ ๋ฌด์ธ๊ฐ๋ฅผ ๊ธฐ๋ค๋ฆฌ๊ณ ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
https://github.com/felixfbecker/vscode-php-intellisense/issues/205#issuecomment -347794655
Insiders Edition์ ๊ฑด๋ ๋ฐ๊ณ 1.19๋ก ๋ง๋ค๊น์?
settings.json
์์ ๋ค์ ์์ฑ์ ์ถ๊ฐํ๋ฉด ์ ๋๋ก ์๋ํฉ๋๋ค.
"files.associations": {"*.php": "html, php"},
๊ธ์์, ๊ทธ๊ฑด ์ฌ์ค์ด ์๋์๋ ๊ฒ ๊ฐ์์. ์ญ๊ณ ํ ํ ์คํธ๋ก ๋์๊ฐ์๊ฒ ์ต๋๊น?
files.association์ ๋ด๊ฐ ์๋ํ ๊ฒ ์ค ํ๋์์ต๋๋ค. ๋๋ฅผ ์ํด ์ผํ ์ ์ด ์์ต๋๋ค.
๊ณต์ ํธ์ํฐ ๊ณ์ ์ด ๋ฐฉ๊ธ ๋ฌธ์ ๋ฅผ ์ ๊ธฐํ๋ผ๊ณ ํ๋๋ฐ
์ธ์ ๊ฐ ํ์ด์ด๋ฅผ ๊ตฌํํ ๊ฒ์
๋๋ค. ๊ฐ์ง๊ณ ์์ง ์๋ค๋ ๊ฒ์ ๊ทธ๋ฐ ๊ธฐ๊ดดํ ๊ฒ์
๋๋ค
์ด ์์์์. ๋ง ๊ทธ๋๋ก VScode๋ฅผ ์ฌ์ฉํ์ง ๋ชปํ๊ฒํ๋ ์ ์ผํ ๋ฐฉ๋ฒ
๋ด ๋
์ ํธ์ง์.
@Ken Newman์ ๋ชจ๋ PHP ํ๋ก์ ํธ์ ๋ํ ๋์ ์๋ฃจ์
์
๋๋ค.
2017 ๋
12 ์ 14 ์ผ ๋ชฉ์์ผ ์คํ 10:31, Ken Newman [email protected]
์ผ๋ค :
๊ธ์์, ๊ทธ๊ฑด ์ฌ์ค์ด ์๋์๋ ๊ฒ ๊ฐ์์. ์ญ๊ณ ํ ํ ์คํธ๋ก ๋์๊ฐ์๊ฒ ์ต๋๊น?
โ
๋น์ ์ด ์ธ๊ธ ๋์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ฐ๊ณ ์์ต๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ณ GitHub์์ ํ์ธํ์ธ์.
https://github.com/Microsoft/vscode/issues/670#issuecomment-351827207 ,
๋๋ ์ค๋ ๋ ์์๊ฑฐ
https://github.com/notifications/unsubscribe-auth/APewuYFpWR6_mZbUO-XVNMwH0LpYb_Cqks5tAYWugaJpZM4Gpk-J
.
-
๋ฌธ์ ์ธ์ฌ,
Danny Mexen.
HTML์ด ์ด์ 1.19์ PHP ์ธ์ด / ํ์ผ ๋ด์์ ์๋ ํ ์ ์์ต๋๊น? ๋ฐฉ๊ธ ํ ์คํธํ๊ณ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ด๋ ์๋ํ๋ ๊ฒ์ ๋ด ๋๋ค ...
@jsieler 1.19 ๋ฐ 1.20์์ ์ฌ์ ํ ์๋ํ์ง ์์ต๋๋ค.
VSCode 1.19๋ .php ํ์ผ์ ์์ฑ ์ธ html์ ์๋ ์์ฑ ํ ์ ์์ต๋๋ค.
๋ฌธ์ 2 ๋
...
HTML ์์ด ํ์ฅ์๋ฅผ ๊ฐ์ง PHP ํ์ผ์์ ์ ์๋ํฉ๋๋ค. ์ด ๋ฌธ์ ๋ ์๋ง๋ ์ข ๊ฒฐ ๋ ์ ์์ต๋๋ค.
@bmewburn ๋๋ ๊ทธ๋ ๊ฒ ์๊ฐํด
์๋์, ๊ฐ์ธ์ ์ผ๋ก ์ธ๋ถ ํ์ฅ์ด ํ์์๋ ์ง์์ ๊ธฐ๋ค๋ฆฌ๊ณ ์์ต๋๋ค.
์ฃผ์ ๋ฌธ์ ๋ ๋ค๋ฅธ ์ธ์ด์๋ ์ ์ฉ๋ฉ๋๋ค.
์ฐ๋ฆฌ ์ค ์ผ๋ถ๊ฐ ์ฌ๊ธฐ์์๋ณด๊ณ ํ๋ ๋ฌธ์ ์ ๋ํด ๋ช ํํํฉ์๋ค.
์ง๊ธ์ ์ค์ค๋ก ์ด์ผ๊ธฐํ๊ฒ ์ต๋๋ค.
์ด ๋ฌธ์ ๋ PHP ํ์ผ์ HTML ์๋ ์์ฑ ์คํจ๊ฐ ์๋๋ผ VSCode์ '๋ฌธ์ ์์'๊ธฐ๋ฅ์ ๋งฅ๋ฝ์์ PHP ํ์ผ์ HTML ์ฝ๋๋ฅผ ํฌ๋งทํ๋ ๊ฒ์ ๋๋ค. ์ด๊ฒ์ด ๋ถ๋ช ํฉ๋๊น?
๊ธฐ๋ณธ ํค๋ณด๋ ๋ฐ๋ก ๊ฐ๊ธฐ๊ฐ Ctrl
+ Shift
+ I
๊ฒฝ์ฐ HTML ์ฝ๋๊ฐ ํฌํจ ๋ PHP ํ์ผ์์ PHP ์ฝ๋ ๋ง ํ์ํ๋จ์ ์ ์ ์์ต๋๋ค. HTML ์ฝ๋๋ ํ์์ด ์ ํ ์ง์ ๋์ง ์์์ต๋๋ค.
์๋ฅผ ๋ค์ด์ด ๊ธฐ๋ฅ์ ST 3์์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ ๊ณต๋ฉ๋๋ค.
์๋ ์์ฑ, ์๋ ๋ซ๊ธฐ ํ๊ทธ ๋ฑ์ ์ ์๋ํฉ๋๋ค. PHP ์ค์ ํญํ ๋ค์ HTML ์ค์ ํญํ๊ณ ๋ฌธ์ ํ์์ ์ง์ ํ๋ฉด PHP ์ฝ๋ ๋ง ์ฌ๋ฐ๋ฅด๊ฒ ๋ค์ฌ ์ฐ๊ธฐ๋ฉ๋๋ค.
๋๋ ์ด๊ฒ์ด ์ฌ๊ธฐ์์ ์ผ๋ถ๋ฅผ ์ ๋ฆฌํ๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
์ฌ๊ธฐ ๋๊ฐ ๋์ ํจ๊ป์ด ๋ฌธ์ ๋ฅผ ๊ฒช๊ณ ์์ต๋๊น?
@bmewburn php ํ์ผ์ HTML ์ธ์ด ๋ชจ๋๋ฅผ ์ ํํ ๊ฒฝ์ฐ์๋ง ์๋ํ์ง๋ง ์ฝ๋์ php ๋ถ๋ถ์ ๋ํ ์คํ์ผ์ด ์๋ชป๋์์ต๋๋ค.
๋ฟก๋ฟก
"files.associations": { "* .php": "html, php"},
์ ํ ์๋ํ์ง ์์ต๋๋ค! ๋ง์ง๋ง์ผ๋ก ์ฌ์ฉํ ์ธ์ด (์ด ๊ฒฝ์ฐ์๋ PHP) ๋ง ์ฌ์ฉํฉ๋๋ค. ๋ค๋ฅธ ๊ฒ๋ค์ ์์ ํ ๋ฌด์๋ฉ๋๋ค.
@SharakPL ์ด๋ค ๋ฒ์ ์ VSCode ru๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๊น?
@ kilevvri1 ๋ฐฉ๊ธ 1.19.1์์ 1.19.2๋ก ์
๊ทธ๋ ์ด๋ํ์ต๋๋ค. ๋ณ๊ฒฝ ์์ :(
ํ์ผ ์ธ์ด๋ก PHP๋ฅผ ์ ํํ๋ฉด html ์ ์์ด ์๋ํ์ง ์์ต๋๋ค.
HTML์ ํ์ผ ์ธ์ด๋ก ์ ํํ๋ฉด php ๋ถ๋ถ์ ์ผ๋ฐ ํ
์คํธ๋ก ์คํ์ผ์ด ์ง์ ๋๊ณ ์ถ๋ ฅ์ ๋ง์ ์ค๋ฅ๊ฐ ํ์๋ฉ๋๋ค.
@SharakPL VSCode ์ฌ์ฉ์ ์ค์ ์ ์ ํ ๊ฒฝ๋ก๊ฐ ์ฐ๊ฒฐ๋์ด ์์ต๋๊น? ์ง๊ธ์ ์ง์ ์์ง๋ง ๋์ ์ค๋ฉด intellephense๊ฐ ์๋ฒฝํ์ง ์๊ธฐ ๋๋ฌธ์ ๋์ ๋๋ฆฌ๊ฒ ์ต๋๋ค.ํ์ง๋ง ์ธ์ ์ ์๋ํ๋์ง ๊ถ๊ธํด์ ๋์ ๋๋ฆฌ๊ฒ ์ต๋๋ค.
@SharakPL ๋๋ ๋น์ ์ PHP ๊ฒฝ๋ก๋ฅผ ์๋ฏธํ์ต๋๋ค. ํด๋ ์ ํ์ ์ ๋ ฅ ์ค์ ๋๋ค. ์ฃ์กํฉ๋๋ค.
@ kilevvri1 ์, ์์ต๋๋ค
"php.suggest.basic": true,
"php.validate.enable": true,
"php.validate.executablePath": "c : \\ wamp64 \\ bin \ php \ php5.6.25 \ php.exe",
"php.validate.run": "onType",
PHP ์ธ์ด ๋ชจ๋์์ html ์ฝ๋๊ฐ ํญ์ ๊ทธ์ ๋ฐ๋ผ ์ ์๋๋ Sublime Text 3๊ณผ ๊ฐ์์ผํฉ๋๋ค.
๋ฟก๋ฟก
ํ์ฅ ๊ถ์ฅ ์ฌํญ์ ๋ฐ๋ผ :
"php.suggest.basic": false
๊ทธ๊ฒ์ ์๋ํ๊ณ ์๋ ค์ฃผ์ธ์
@ kilevvri1 ๋ณ๊ฒฝ ์ฌํญ ์์ :(
์ค, ์ด์ ์๊ฒ ์ต๋๋ค! PHP ํ์ ํ์ผ์๋ ์ผ์ข
์ HTML ์ธํ
๋ฆฌ ์ผ์ค๊ฐ ์์ง๋ง EMMET ์ ์์ ํตํด ๊ด๋ฆฌ๋ฉ๋๋ค. https://docs.emmet.io/cheat-sheet/
์ ์ ๋ ์ค ๋ํซ์ด ์๊ธฐ ๋๋ฌธ์ <a
๋ฅผ ์
๋ ฅํ์ฌ ๊ฐ๋จํ ๋งํฌ๋ฅผ ์ถ๊ฐ ํ ์ ์์ด ๊ณ์ ์ง์ฆ์ด๋ฌ์ต๋๋ค. a
๋ง ์
๋ ฅํ๋ฉด ํ์ํ ์ ๋ณด๊ฐ ํ์๋์ง๋ง ๋งํฌ๊ฐ ์์ง๋ง ๋ชจ๋ ์์ฑ์ ๋ฌธ์๋ณ๋ก ์๋์ผ๋ก ์ถ๊ฐํด์ผํ๋ค๊ณ ์๊ฐํ์ต๋๋ค. EMMET๋ฅผ ์ฌ์ฉํ๋ฉด a#mylink.btn.btn-success
๋ฅผ ์
๋ ฅํ์ฌ <a href="" id="mylink" class="btn btn-success"></a>
๋ฅผ ์ป์ ์ ์์ต๋๋ค. ๋ฉ์ง์ง๋ง ๋ ์ ํํ html์ ์ป์ผ๋ ค๋ฉด a#mylink.btn.btn-success[title="click me" target="_blank"]
๋ฅผ ์ฌ์ฉํด์ผํ๋ฉฐ ์ ๋ถ๋ถ์ ๋ค์ ํ ๊ธ์ ์ฉ ์
๋ ฅํด์ผํฉ๋๋ค. SublimeText์ ์คํ์ผ์ด ํจ์ฌ ๋ ์ข์ ๊ฒ์
๋๋ค.
HTML intellisense๊ฐ ์๋ํ๋ ํ์ผ ํ์ฅ์ ๋ชฉ๋ก์ .php๋ฅผ ์๋์ผ๋ก ์ถ๊ฐ ํ ์์๋ ๋ฐฉ๋ฒ์ด ์์ต๋๊น? ์ด๊ฒ์ Eclipse์์ ์ํ ํ ์ ์์ต๋๋ค.
@graddev ๋๊ตฐ๊ฐ ์ ์
"files.associations": {"*.php": "html, php"}
์ฌ์ฉ์ ์ค์ ์์ ์์ง๋ง ์ด๊ฒ์ ๋๋ฅผ ์ํด ์๋ํ์ง ์์ต๋๋ค.
์ด ๊ธฐํ๋ฅผ ์ถ๊ฐ ํ ๋ ๋๊ฐ ์๊ฒ ์ต๋๊น?
2020 ๋
์ด์๋๋ฐ๋ ์์งํ์ง ์์์ต๋๋ค ...
PHP ํ์ผ์ HTML ๋ฐ CSS ์๋ ์์ฑ ... ๋ฐฉ๋ฒ?
์ด ๊ธฐ๋ฅ์ ์ถ๊ฐํด์ผํฉ๋๋ค. HTML ํ๊ทธ์ ์์ฑ ์๋ ์์ฑ์ด ์ ํ ์๋ํ์ง ์์ต๋๋ค.
์ฌ๋ฌ๋ถ, ์ ๋ ๋งค์ฐ ์ญ๊ฒจ์ด ์๋ฃจ์ ์ ์ฌ์ฉํ๊ณ ์์ง๋ง (๋ค์) ์๋ํฉ๋๋ค. ๋งคํฌ๋ก ํค๊ฐ์๋ ํค๋ณด๋๊ฐ ์์ผ๋ฏ๋ก ์ธ์ด โโ๋ชจ๋๋ฅผ ๋ณ๊ฒฝํ๋ ๋งคํฌ๋ก๋ฅผ ๋ง๋ค์์ต๋๋ค. HTML intellisense๋ฅผ ์ํ๋ฉด M1์ ๋๋ฅด๊ณ PHP๋ฅผ ์ํ๋ฉด M2๋ฅผ ๋๋ฆ ๋๋ค.
intelephense ํ์ฅ์๋ฅผ ์ฌ์ฉํด๋ณด์ญ์์ค.
@aeschli ์ด๊ฒ์ ์ฃผ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ง ์์ต๋๋ค. Smarty ํ์ฅ์์ ๋ด๊ฐ ์ ์ง ๊ด๋ฆฌํ๋ ํ์ฅ์์๋ ๋์ผํ ๋ฌธ์ ๊ฐ ๋ฐ์ํฉ๋๋ค. ์ถ์ฒ ๋ PHP ํ์ฅ์ด ๋ ์ด์ ์ง์์๋ฐ์ง ๋ชปํ๊ณ ์๋ฑํ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ ๋ค๋ฅธ ํ์ฅ ํ๋ก๊ทธ๋จ์ ์ฌ์ฉํ๋๋ก ๊ถ์ฅํ์ฌ์ฃผ์๋ฅผ ๋ถ์ฐ์ํค๋ ค๋ ๊ฒ์ ์ ๋ง ์ค๋ง ์ค๋ฝ์ต๋๋ค. ํ์ง๋ง ๋ฌธ์ ๋ ๋ ๊น์ด์ง๋๋ค. ์ฌ์ค,์ด ๋ฌธ์ ๋ ๋ค์ ์คํ๋ฆฐํธ์์ ํด๊ฒฐ๋์ด์ผํ๋ฉฐ ๋ฐฑ ๋ก๊ทธ์ ๋์ด๋ ๊ฒ์ ๊ณ ๋ คํ์ง ์๊ณ ๋ฌธ์ ๋ฅผ ๊ฒฝ์ํด์๋ ์๋ฉ๋๋ค. ์ปค๋ฎค๋ํฐ ๊ด์ฌ์ฌ์ ๋ํด ์ด๋ป๊ฒ ์๊ฐํ์ญ๋๊น?
๋ฏธ์ํ์ง๋ง ์ข ํ๊ฐ ๋ฌ์ด์.
(์ฌ์ค 3 ๊ฐ์ ์ ์ ๋๊ฐ์ ๋ง์ํ์ต๋๋ค.)
VSCode ํ์ด ์์
ํ ์ ์๊ณ ์ ๋ฌธ ์ง์์ ๋ณด์ ํ ์์๋ ์์ญ์ ๋๋ฌด ๋ง์ต๋๋ค. ๋ถํํ๋ ์ฐ๋ฆฌ๋ PHP ๊ฐ๋ฐ์๊ฐ ์๋๋๋ค. ์ด๊ฒ์ด ์ฐ๋ฆฌ๊ฐ ๊ฐ๋ฐฉํ ํ์ฅ API์ ๋ง์ผ ํ๋ ์ด์ค๋ฅผ ์๊ฐ ํด๋ธ ์ด์ ์
๋๋ค. ํ์ฅ ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ฌ ์ฐ๋ฆฌ๋ฅผ ์ง์ํ๊ณ ์ข์ ํผ๋๋ฐฑ์ผ๋ก ์ ์๋ฅผ ๋์์ฃผ์ธ์.
๋ชจ๋ ํ์ฅ ๊ธฐ๋ฅ์ด ๋ด์ฅ๋์ด ์๊ณ VSCode์ ํจ๊ป ์ ๊ณต๋๋ฉด ์ข์ ๊ฒ์์ ์ดํดํ์ง๋ง ๋ค์ด๋ก๋๋ฅผ ์๊ฒ ์ ์งํ๊ณ ์ถ์ต๋๋ค.
์ฐ๋ฆฌ๋ PHP์์ HTML ์์ฑ์ ํฅ์์ํค๊ธฐ ์ํด intelephense ํ์ฅ์ ์ ์ ์ธ Ben๊ณผ ํ๋ ฅํ์ต๋๋ค. ์ทจํ ์ ๊ทผ ๋ฐฉ์์ด ์ฌ๋ฐ๋ฅธ ์ ๊ทผ ๋ฐฉ์์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. '์ฃผ'์ธ์ด ์ธ PHP๋ง์ด ์ข์ ์ฌ์ฉ์ ๊ฒฝํ์ ์ ๊ณตํ๊ธฐ ์ํด ํฌํจ ๋ HTML ์ฝํ ์ธ (์ : ์ธ์ฝ๋ฉ ๋ฐฉ๋ฒ, PHP ๋ณ์ ํ์ธ ๋ฐฉ๋ฒ)๋ฅผ ์์ ํ ์ดํดํฉ๋๋ค. ๋ด ๊ฒฝํ์ ๋น์ถ์ด ๋ณผ ๋, ๋ค๋ฅธ ์ผ๋ฐ์ ์ธ ์๋ฃจ์ ์ ๋ฌธ์ ์ ์ผ๋ถ๋ง ํด๊ฒฐํ๊ณ ํด๊ฒฐํ ์์๋ ์ฌ๋ก์ ๋ํด ์๋ฐฑ ๊ฐ์ ๊ณต๊ฐ ๋ฌธ์ ๋ก ๋๋ฉ๋๋ค.
@ jens1o ์ค๋ง ํ์ จ๊ณ ๊ฐ๊น์ด ์ฅ๋์์ด ๋ถ์ผ์์ ๊ณํ๋ ๊ฒ์ด ์๋ฌด๊ฒ๋ ์๋ค๋ ์ ์ ๋ํด ์ ๊ฐ์ ๋๋ค. ํ์ฅ ์ํ๊ณ๋ฅผ ์ง์ํ๊ฑฐ๋ intelephense (๋ฐ ๊ธฐํ PHP ํ์ฅ)์ ๊ธฐํ๋ฅผ ์ ๊ณตํ์ฌ ์ ํฌ๋ฅผ ๋์์ฃผ์ธ์.
์ข์, ์จ์ ์๋ค์ด ์ฌ๊ณ ์ง์ ํ๋ค. ๋ฐ๋ผ์ ๋ด ํ์ฅ์ผ๋ก ์ด์ ์ ์ด๋ํด ๋ณด๊ฒ ์ต๋๋ค. ์ฌ์ฉ์๊ฐ HTML์ ์์ฑ ํ ์ ์๋๋ก HTML ์ธ์ด ์๋ฒ์ ํฌํฌ๋ฅผ ์ ์งํด์ผํฉ๋๊น? ๊ทธ๊ฒ์ด ์ ๊ฐ ์ธ๊ธํ๋ ํต์ฌ ๋ฌธ์ ์ด๊ธฐ๋ํฉ๋๋ค. ๋ค๋ฅธ ์ธ์ด๋ ๋ ํฐ ํ๊ฒฉ์๋ฐ๋๋ค๊ณ ์๊ฐํฉ๋๋ค. ๋ฌธ์ ๋ Smarty๊ฐ ๋ชจ๋ ์ธ์ด (์ : csv, json)์ ๊ฐ๊น๊ฒ ์ฌ์ฉํ ์์์ ์ ๋๋ก ์ ์ฐํ๋ค๋ ๊ฒ์ ๋๋ค. ์ธ์ด ์ ํ์ ๊ตฌ์๋์ง ์๋ ํ ํ๋ฆฟ ์์คํ ์ด๊ธฐ ๋๋ฌธ์ ๋๋ค. ๊ทธ๋์ ์ ๋ csv ์ธ์ด ์๋ฒ (์กด์ฌํ์ง ์๋), XML ์๋ฒ, JSON ์๋ฒ์ ํฌํฌ๋ฅผ ์ ์งํด์ผํฉ๋๋ค. ๊ธฐ์ ๋ฆฌ์์ค๊ฐ ํ์ฉํ๋ ์ธ์ด๊ฐ ๋ช ๊ฐ์ธ ์ง ๊ถ๊ธํฉ๋๋ค.
intelephense (๋ฐ ๊ธฐํ PHP ํ์ฅ)์ ๊ธฐํ๋ฅผ ์ ๊ณตํฉ๋๋ค.
๋๋ HTML intellisense๊ฐ ์์ด๋ ์ฝ๋๋ฒ ์ด์ค๋ฅผ ์ข์ํ๊ธฐ ๋๋ฌธ์ @felixfbecker์ php-intellisense๋ฅผ
@aeschli ํ์ฅ์ด php์ html ๋ถ๋ถ์ด ๋
๋ฆฝํ html ํ์ผ๊ณผ ๋์ผํ ๋์์ํ๋๋ก ๋ง๋ค ์ ์๋ค๊ณ ์๊ฐํ์ญ๋๊น? html์ ๋ํ ๋ชจ๋ ํ๋ฌ๊ทธ์ธ์ด ํด๋น ๋ถ๋ถ์์ ์ ์๋ํ๋๋กํ๋ ๊ฒ์ ํฌํจํ์ฌ?
ํ์ฅ ์์คํ
์ ์ฐ๋ฆฌ ๋ชจ๋๊ฐ ์๊ณ ์๋ฏ์ด ์ ๋ง ์ค์ํ์ง๋ง ๋ชจ๋ ๊ธฐ๋ฅ์ด ํ๋ฌ๊ทธ์ธ์ ์ ํฉํ ๊ฒ์ ์๋๋๋ค. ์ค์ ๋ก ํ์ํ ๊ฒ์ ํ๋์ ํ์ผ์ ์ฌ๋ฌ ์ธ์ด๋ก ๊ตฌ๋ฌธ ๋ถ์ํ๊ณ ๋ณ๋๋ก ์ฒ๋ฆฌํ๋ ๊ฒ์
๋๋ค. ์ด๊ฒ์ ์ฝ๋ ํธ์ง๊ธฐ์ ๋ด์ฅ ๋ ๊ธฐ๋ฅ์ด์ด์ผํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋ชจ๋ PHP ํ์ผ์ ์ค์ ๋ก HTML์ ๋๋ค.HTML ํ๊ทธ. ์ด ํ๊ทธ์ ์ฝํ ์ธ ๋ง HTML๋ก ๊ฐ์ฃผํด์๋ ์๋ฉ๋๋ค. HTML์ ํฌํจ ๋ ์ธ์ด ์ผ ๋ฟ์ด๋ฉฐ CLI ์์ด๋ ์๋ํ์ง ์์ต๋๋ค. ๋ฐ๋ผ์ ๋ฌธ์ ๋ PHP์ HTML์ ๊ดํ ๊ฒ์ด ์๋๋ผ HTML์ด ์ฃผ์ ์ปจํ ์ด๋์ ๋๋ค. ๋ํ CSS javascript vbscript svg perl java์ ๊ฐ์ ๋ง์ ์ธ์ด๋ฅผ HTML์ ํฌํจ ํ ์ ์์ต๋๋ค. ๊ณต์์ ์ธ ์ง์ ์์ด๋ ์ด๋ค ํ์ฅ ํ๋ก๊ทธ๋จ๋์ด๋ฅผ ์ํ ํ ์ ์๋ค๊ณ ์๊ฐํฉ๋๋ค.
๊ฐ์ฌํฉ๋๋ค @popcorner. ๋๋ ์ค์ ๋ก ๋๊ฐ์ด ๋งํ๊ณ ์ถ์์ง๋ง ๋น์ ์ด ํจ์ฌ ๋ ์ ์ผ์ต๋๋ค. :)
ST๊ฐ ์ด๊ฒ์ ์ด๋ป๊ฒ ์ํํ๋์ง ์๋ ์ฌ๋์ด ์์ต๋๊น? ๋์ ์์ค์ ์ค๋ช ๋ ๊ฐ์ฌํ๊ฒ ์ต๋๋ค.
PHP์ HTML intellisense์ ๋ํ์ด ๋ฌธ์ ๋ฅผ ๊ณ์ ์ ์งํฉ์๋ค. ์๋ฒ ๋๋ ์ธ์ด์ ๋ํ ์ธ์ด ๊ธฐ๋ฅ์ ํ์ฑํํ๋ ๋ฐฉ๋ฒ์ ๋ํ ๊ธฐ์ ๋ก ๋ฌธ์๋ฅผ ๊ฐ์ ํ ๊ฒ์ ๋๋ค. ์ด๋ฅผ์ํ ์ถ๋ฐ์ ์ผ๋ก # 47288์ ๋ง๋ค์์ต๋๋ค.
@ jens1o ๊ทธ ๋ฌธ์ ์ ๋ํ ํ์ต๋๋ค.
@paldepind ๋ํ ๊ทํ์ ์๊ฒฌ ์ ๋ํ
๋๋ ์ด๊ฒ์ ์ฌ์ ํ ๋ถํธํ๋ค. ์ํ ์ต,์ด ๋ฌธ์ ๋ PHP ์ฉ์ผ๋ก ์ถ์ ํ ๊ณํ์ด ์๋๋ผ ๋์ ํด๋น ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ์ข ๊ฒฐ ๋ ์ ์์ต๋๋ค.
ํด๊ฒฐ์ฑ ์์ด ์ฌ์ ํ ๋ฌธ์ ?
์ ๋ Laravel Blade๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๋ค. ์ฌ๊ธฐ์๋ PHP ํ๊ทธ๊ฐ ์์ต๋๋ค.์ด ๊ธฐ๋ฅ์ ์ด๋ป๊ฒ ๊ตฌํํ ์ง ๊ถ๊ธํฉ๋๋ค ..
ํด๊ฒฐ๋์์ง๋ง ์ด์ ๋ฅผ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค ... PHP inteliphense๋ฅผ ์
๋ฐ์ดํธํ๊ฑฐ๋ vscode ๋ด๋ถ์๋ฅผ ์ฌ์ฉํ์ญ์์ค ...
@victormongi ์ด๋ค PHP inteliphense๋ฅผ ์ฌ์ฉํฉ๋๊น?
@jfnadev ์ด๊ฒ์ด ์ด๋ป๊ฒ ์๋ํ๋์ง ๋ชจ๋ฅด๊ฒ ์ง๋ง ์ด๊ฒ์ ๋ด vscode ๋ฒ์ ๊ณผ intelephense ๋ฒ์ ์
๋๋ค.
@victormongi ์ฐ๋ฆฌ๋ ๋์ผํ ๊ตฌ์ฑ์ ๊ฐ์ง๊ณ ์์ต๋๋ค.
@jfnadev ์ด๊ฒ์ ๋ด ์ค์น๋ ํ์ฅ์
๋๋ค.
extensions.json :
[
{
"metadata": {
"id": "2cbad5ee-b4ab-4de8-a1c7-77fede846155",
"publisherId": "patbenatar.advanced-new-file",
"publisherDisplayName": "patbenatar"
},
"name": "advanced-new-file",
"publisher": "patbenatar",
"version": "1.1.0"
},
{
"metadata": {
"id": "697255a9-3f36-44c8-b084-d3b91edfb23a",
"publisherId": "HookyQR.beautify",
"publisherDisplayName": "HookyQR"
},
"name": "beautify",
"publisher": "HookyQR",
"version": "1.3.0"
},
{
"metadata": {
"id": "9d674f86-f8d2-4fe1-8fa6-a17b40caf4ac",
"publisherId": "pawelgrzybek.bimbo-theme",
"publisherDisplayName": "pawelgrzybek"
},
"name": "bimbo-theme",
"publisher": "pawelgrzybek",
"version": "0.4.5"
},
{
"metadata": {
"id": "f583eafd-aa0d-4ccb-8f44-d1e610389660",
"publisherId": "CoenraadS.bracket-pair-colorizer",
"publisherDisplayName": "CoenraadS"
},
"name": "bracket-pair-colorizer",
"publisher": "CoenraadS",
"version": "1.0.27"
},
{
"metadata": {
"id": "e337c67b-55c2-4fef-8949-eb260e7fb7fd",
"publisherId": "Shan.code-settings-sync",
"publisherDisplayName": "Shan"
},
"name": "code-settings-sync",
"publisher": "Shan",
"version": "2.9.0"
},
{
"metadata": {
"id": "532533c9-a894-4a58-9eee-bbfbe7c06f71",
"publisherId": "mikestead.dotenv",
"publisherDisplayName": "mikestead"
},
"name": "dotenv",
"publisher": "mikestead",
"version": "1.0.1"
},
{
"metadata": {
"id": "1946e66b-9eea-45a9-816b-316bf9d7d1ab",
"publisherId": "Zyst.Egoist-One",
"publisherDisplayName": "Zyst"
},
"name": "Egoist-One",
"publisher": "Zyst",
"version": "1.18.0"
},
{
"metadata": {
"id": "7b71fc1b-190d-4f7d-95d1-93e422649b0a",
"publisherId": "Zignd.html-css-class-completion",
"publisherDisplayName": "Zignd"
},
"name": "html-css-class-completion",
"publisher": "Zignd",
"version": "1.17.1"
},
{
"metadata": {
"id": "8d5687fe-08f5-4a8e-917a-23aef71db6b3",
"publisherId": "zhengxiaoyao0716.intelligence-change-case",
"publisherDisplayName": "zhengxiaoyao0716"
},
"name": "intelligence-change-case",
"publisher": "zhengxiaoyao0716",
"version": "1.1.0"
},
{
"metadata": {
"id": "6f35c257-7fd5-4bc2-9cd1-01976589c17a",
"publisherId": "arcticicestudio.nord-visual-studio-code",
"publisherDisplayName": "arcticicestudio"
},
"name": "nord-visual-studio-code",
"publisher": "arcticicestudio",
"version": "0.6.0"
},
{
"metadata": {
"id": "a41c1549-4053-44d4-bf30-60fc809b4a86",
"publisherId": "christian-kohler.path-intellisense",
"publisherDisplayName": "christian-kohler"
},
"name": "path-intellisense",
"publisher": "christian-kohler",
"version": "1.4.2"
},
{
"metadata": {
"id": "a439d61f-cd9c-453f-b8c7-186f73d44915",
"publisherId": "MehediDracula.php-constructor",
"publisherDisplayName": "MehediDracula"
},
"name": "php-constructor",
"publisher": "MehediDracula",
"version": "0.0.8"
},
{
"metadata": {
"id": "044b4b31-2969-4af3-895d-855433b8b46d",
"publisherId": "felixfbecker.php-debug",
"publisherDisplayName": "felixfbecker"
},
"name": "php-debug",
"publisher": "felixfbecker",
"version": "1.12.2"
},
{
"metadata": {
"id": "5e69f001-f945-4c97-baf0-320d82a153b3",
"publisherId": "felixfbecker.php-intellisense",
"publisherDisplayName": "felixfbecker"
},
"name": "php-intellisense",
"publisher": "felixfbecker",
"version": "2.3.1"
},
{
"metadata": {
"id": "96fa4707-6983-4489-b7c5-d5ffdfdcce90",
"publisherId": "esbenp.prettier-vscode",
"publisherDisplayName": "esbenp"
},
"name": "prettier-vscode",
"publisher": "esbenp",
"version": "1.2.2"
},
{
"metadata": {
"id": "e52bce95-a629-455f-8626-e7301b9e372a",
"publisherId": "robinbentley.sass-indented",
"publisherDisplayName": "robinbentley"
},
"name": "sass-indented",
"publisher": "robinbentley",
"version": "1.4.8"
},
{
"metadata": {
"id": "735af542-944f-4b07-b336-9df27d7b8d84",
"publisherId": "smlombardi.slime",
"publisherDisplayName": "smlombardi"
},
"name": "slime",
"publisher": "smlombardi",
"version": "2.31.2"
},
{
"metadata": {
"id": "d6ba4b7b-539f-456a-b0f6-0348df44cdf3",
"publisherId": "nikitaKunevich.snippet-creator",
"publisherDisplayName": "nikitaKunevich"
},
"name": "snippet-creator",
"publisher": "nikitaKunevich",
"version": "0.0.4"
},
{
"metadata": {
"id": "529697b9-b343-4b1c-ba2f-f5ef692132d4",
"publisherId": "ms-vscode.sublime-keybindings",
"publisherDisplayName": "ms-vscode"
},
"name": "sublime-keybindings",
"publisher": "ms-vscode",
"version": "3.0.3"
},
{
"metadata": {
"id": "a150991b-031b-457a-b823-ef4c45425a1b",
"publisherId": "karyfoundation.theme-karyfoundation-themes",
"publisherDisplayName": "karyfoundation"
},
"name": "theme-karyfoundation-themes",
"publisher": "karyfoundation",
"version": "17.0.0"
},
{
"metadata": {
"id": "2f5dd8cb-d251-4d70-abfe-ddebcb077483",
"publisherId": "octref.vetur",
"publisherDisplayName": "octref"
},
"name": "vetur",
"publisher": "octref",
"version": "0.11.7"
},
{
"metadata": {
"id": "d96e79c6-8b25-4be3-8545-0e0ecefcae03",
"publisherId": "vscodevim.vim",
"publisherDisplayName": "vscodevim"
},
"name": "vim",
"publisher": "vscodevim",
"version": "0.11.3"
},
{
"metadata": {
"id": "d637104e-1fd7-4063-98fc-8afe46012c9b",
"publisherId": "sleistner.vscode-fileutils",
"publisherDisplayName": "sleistner"
},
"name": "vscode-fileutils",
"publisher": "sleistner",
"version": "2.8.1"
},
{
"metadata": {
"id": "aaee577c-f062-495a-9816-0cbd442f1d25",
"publisherId": "ecmel.vscode-html-css",
"publisherDisplayName": "ecmel"
},
"name": "vscode-html-css",
"publisher": "ecmel",
"version": "0.2.0"
},
{
"metadata": {
"id": "c46b0018-f317-4b6c-a785-d2039b27338f",
"publisherId": "wix.vscode-import-cost",
"publisherDisplayName": "wix"
},
"name": "vscode-import-cost",
"publisher": "wix",
"version": "2.6.2"
},
{
"metadata": {
"id": "ffda6552-0ad5-431b-a4fa-0905a7e4f3f0",
"publisherId": "bmewburn.vscode-intelephense-client",
"publisherDisplayName": "bmewburn"
},
"name": "vscode-intelephense-client",
"publisher": "bmewburn",
"version": "0.8.8"
},
{
"metadata": {
"id": "80e9cc3c-eb09-48ed-afda-f1cfd9c9ca3f",
"publisherId": "phproberto.vscode-php-getters-setters",
"publisherDisplayName": "phproberto"
},
"name": "vscode-php-getters-setters",
"publisher": "phproberto",
"version": "1.1.0"
},
{
"metadata": {
"id": "9b2c953d-6ad4-46d1-b18e-7e5992d1d8a6",
"publisherId": "akamud.vscode-theme-onedark",
"publisherDisplayName": "akamud"
},
"name": "vscode-theme-onedark",
"publisher": "akamud",
"version": "2.1.0"
},
{
"metadata": {
"id": "ee33fd31-7bb4-4252-8368-fdd5bcd94cf8",
"publisherId": "akamud.vscode-theme-onelight",
"publisherDisplayName": "akamud"
},
"name": "vscode-theme-onelight",
"publisher": "akamud",
"version": "2.1.0"
}
]
๋ณํ๊ฐ ์์ต๋๊น? ์ ๋ ๊ฐ์ ๋ฌธ์ ๊ฐ ์์ต๋๋ค ..
๋๋ +1.
3 ๋ ์ ์์ด ๋ฌธ์ ๊ฐ ์์ง ํด๊ฒฐ๋์ง ์์๋ค๋ ๊ฒ์ด ์ข์ต๋๋ค.
์ด๊ฒ์ด ํ์์ ์ธ ๊ธฐ๋ฅ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. ๋๋ ๊ทธ๊ฒ์ด VS Code๋ก ๋ง์ด๊ทธ๋ ์ด์ ๋๊ธฐ๋ฅผ ๊ธฐ๋ค๋ฆฌ๊ณ ์์ต๋๋ค ๐
๋๋ ์ฐ๋ฆฌ ๋ชจ๋๊ฐ ํ์ฌ TBH์์ ๊ฐ์ ๊ฒ์ ์ธ๊ธํ๊ณ ์๋์ง ํ์ ํ์ง ๋ชปํฉ๋๋ค.
2018 ๋
5 ์ 14 ์ผ ์์์ผ ์คํ 1:53, Miqueias Penha [email protected]
์ผ๋ค :
PHP Intelephense
ํ์ด๋ผ์ดํธ ๋งค์นญ ํ๊ทธ์์ ! s2
โ
๋น์ ์ด ์ธ๊ธ ๋์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ฐ๊ณ ์์ต๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ณ GitHub์์ ํ์ธํ์ธ์.
https://github.com/Microsoft/vscode/issues/670#issuecomment-388790414 ,
๋๋ ์ค๋ ๋ ์์๊ฑฐ
https://github.com/notifications/unsubscribe-auth/APewudsZw-Cu5mpgLrBJ8vUPagFUxB5Rks5tyXApgaJpZM4Gpk-J
.
-
๋ฌธ์ ์ธ์ฌ,
Danny Mexen.
vscode๋ php์ ๋ํ f๋ฅผ ์ ๊ณตํ์ง ์์ต๋๋ค. ์ด๊ฒ์ ์ถ๊ฐํ์ญ์์ค.
PHP Intelephense๋ฅผ ์ค์นํ์ต๋๋ค. ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค.
๊ทธ๋์ ์ฐ๋ฆฌ๋ ์ฌ๊ธฐ์ ๋ถ๋ช ํฉ๋๋ค.
PHP ํ์ผ์์๋ HTML ์ฝ๋๋ฅผ ํ์ํ (Ctrl + Shift + I) ํ ์ ์์ต๋๋ค.
@venoel PHP Intelephense๋ฅผ ์ค์นํ๋ฉด
๊ทธ?
2018 ๋ 5 ์ 30 ์ผ ์์์ผ ์คํ 8:17์ venoel [email protected] ์ ๋ค์๊ณผ ๊ฐ์ด ์ผ์ต๋๋ค.
PHP Intelephense๋ฅผ ์ค์นํ์ต๋๋ค. ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค.
โ
๋น์ ์ด ์ธ๊ธ ๋์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ฐ๊ณ ์์ต๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ณ GitHub์์ ํ์ธํ์ธ์.
https://github.com/Microsoft/vscode/issues/670#issuecomment-393264440 ,
๋๋ ์ค๋ ๋ ์์๊ฑฐ
https://github.com/notifications/unsubscribe-auth/APewuX-9NlZ3_tgvbVnOADg57CLN0yBlks5t3uItgaJpZM4Gpk-J
.
-
๋ฌธ์ ์ธ์ฌ,
Danny Mexen.
@DannyMexen.
ํ๊ทธ์ ๋ํ ์ ์์ ์ฌ๋ฐ๋ฅด๊ฒ ๋ฐ๊ณ ๋ค์ฌ ์ฐ๊ธฐ๊ฐ ์ ์ ์ฉ๋ฉ๋๋ค.
Microsoft๋ GitHub๋ฅผ ์ธ์ํฉ๋๋ค!
๊ทธ๋ฌ๋์ด ๋ฌธ์ ๋ ์ฌ์ ํ!
๋กค!
ํ
์ ์๋ ค์ ธ ์์ต๋๋ค. ๊ทธ๊ฒ์ ๋น์ ์ ์ํด ์๋ํฉ๋๋ค.
๋ด๊ฐ ๋ฌด์์ ์๋ํ๋ PHP ํ์ผ์์ HTML ์ฝ๋๋ฅผ ํ์ํ ํ ์ ์์ต๋๋ค.
2018 ๋ 6 ์ 4 ์ผ ์์์ผ ์ค์ 11:00์ venoel [email protected] ์ ๋ค์๊ณผ ๊ฐ์ด ์ผ์ต๋๋ค.
@DannyMexen https://github.com/DannyMexen .
ํ๊ทธ์ ๋ํ ์ ์์ ์ฌ๋ฐ๋ฅด๊ฒ ๋ฐ๊ณ ๋ค์ฌ ์ฐ๊ธฐ๊ฐ ์ ์ ์ฉ๋ฉ๋๋ค.โ
๋น์ ์ด ์ธ๊ธ ๋์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ฐ๊ณ ์์ต๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ณ GitHub์์ ํ์ธํ์ธ์.
https://github.com/Microsoft/vscode/issues/670#issuecomment-394283911 ,
๋๋ ์ค๋ ๋ ์์๊ฑฐ
https://github.com/notifications/unsubscribe-auth/APewuVJC1tDUt9qWZ2Hjn76-NEQjSC15ks5t5PdBgaJpZM4Gpk-J
.
-
๋ฌธ์ ์ธ์ฌ,
Danny Mexen.
VSCode์๋ ํน์ ํ์ผ ํ์์ ๋ํด ๋ ๊ฐ์ง ์ด์์ ์ธ์ด ๋ชจ๋๋ฅผ ์ค์ ํ๋ ์ต์ ์ด ์์ด์ผ ๋ชจ๋ ํ์ผ ํ์์ ๋ํด ๋์์ ๊ตฌ๋ฌธ ๊ฐ์กฐ ๋ฐ ์ง๋ฅ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ง๊ธ๋ ํ๋์ VSCode ์ธ์คํด์ค๋ฅผ ์ฌ์ฉํ์ฌ ์ธ์ด ๋ชจ๋๊ฐ ๋ค๋ฅธ ๋ค๋ฅธ ํ์ผ์ ์์ต๋๋ค. Honeslty ๊ตฌํํ๊ธฐ๊ฐ ์ ๊ทธ๋ ๊ฒ ์ด๋ ค์ด์ง ๋ชจ๋ฅด๊ฒ ์ต๋๋ค. ๋๊ตฐ๊ฐ๋ ์๋ํ์ง ์๊ณ ๊ฒฐ์ฝ ์๋ํ์ง ์์์ง๋ง ์ด์ ์ ์๋ ์๋ฃจ์ ์ผ๋ก ์ฌ์ฉํ์ง๋ง ํ์คํ ๋ค์๊ณผ ๊ฐ์ดํด์ผํฉ๋๋ค.
"files.associations": {
"*.phtml": ["html", "php"]
}
์, @SharakPL์ ์์ ํ ๋์ํฉ๋๋ค. ๋๋ ์ฃผ์ด์ง ์๋ต์ ์ดํดํ์ง ๋ชปํ์ง๋ง
์ ๊ฐ ์ฌ๊ธฐ์๋ ๊ฒ๋ณด๋ค ๋ ๋๋ํ ์ฌ๋๋ค์ ๊ทธ๊ฒ์ด ์ฝ์ง ์๋ค๊ณ ๋งํ์ต๋๋ค.
๊ตฌํํ ๊ฒ. ๋๋ ์ค์ค๋ก ํ ์์์๋งํผ ์ ํตํ์ง๋ ์์ง๋ง
์๋ฅผ ๋ค์ด ST3์์๋ ๊ธฐ๋ฅ์ด ๊ธฐ๋ณธ์ ์ผ๋ก ์ ๊ณต๋ฉ๋๋ค.
๋ค๋ฅธ ๋ชจ๋ ๊ณณ์ ๊ธฐ๋ณธ ๊ธฐ๋ฅ.
2018 ๋ 6 ์ 6 ์ผ ์์์ผ ์คํ 9์ 33 ๋ถ์ SharakPL [email protected] ์ ๋ค์๊ณผ ๊ฐ์ด ์ผ์ต๋๋ค.
VSCode์๋ 2 ๊ฐ ์ด์์ ์ธ์ด ๋ชจ๋๋ฅผ ์ค์ ํ ์์๋ ์ต์ ์ด ์์ด์ผํฉ๋๋ค.
๋ชจ๋ ํ์ผ์ ๋ํ ๊ตฌ๋ฌธ ๊ฐ์กฐ ๋ฐ ์ง๋ฅ์ ์ธ
๋์์. ์ง๊ธ๋ VSCode ์ธ์คํด์ค 1 ๊ฐ๋ก
์ธ์ด ๋ชจ๋๊ฐ ๋ค๋ฅธ ๋ค๋ฅธ ํ์ผ์๋ง ์์ต๋๋ค. Honeslty ๋๋ํ์ง ์๋๋ค
๊ตฌํํ๊ธฐ๊ฐ ์ ๊ทธ๋ ๊ฒ ์ด๋ ค์ด์ง ์ ์ ์์ต๋๋ค. ๋๊ตฐ๊ฐ๋ ์ด์ ์ ๊ทธ๊ฒ์
์๋ํ์ง ์๊ณ ๊ฒฐ์ฝ ์๋ํ์ง ์์ง๋ง ์๋ํ๋ ์๋ฃจ์ ์ด์ง๋ง ํ์คํ
ํ ๊น์:"files.associations": {
"* .phtml": [ "html", "php"]
}โ
๋น์ ์ด ์ธ๊ธ ๋์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ฐ๊ณ ์์ต๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ณ GitHub์์ ํ์ธํ์ธ์.
https://github.com/Microsoft/vscode/issues/670#issuecomment-395187031 ,
๋๋ ์ค๋ ๋ ์์๊ฑฐ
https://github.com/notifications/unsubscribe-auth/APewuQ4MZdnzRvFyDZC2LSkhfPLVHt7Wks5t6C6XgaJpZM4Gpk-J
.
-
๋ฌธ์ ์ธ์ฌ,
Danny Mexen.
@DannyMexen ๋ ๋ฉ๋ชจ์ฅ ++์ ๋์ํฉ๋๋ค. 2018 ๋ ์ด๊ณ vscode์๋ ์ฌ์ ํ์ด ๊ธฐ๋ฅ์ด ์์ต๋๋ค. ๋ฏธ์ณค์ด.
_์ด ๋ฌธ์ ๋ฅผ ๋ซ์ผ์ญ์์ค. ์ ๋ ์ผ์ด๋์ง ์์ ๊ฒ์ ๋๋ค ._
@bsienn ์ค๋ช ์ ๊ด์ฌ? ๊ฐ๋จํ ํ ์คํธ ํธ์ง๊ธฐ์์ ํํ ๋ณผ ์์๋ ๊ฒ์ด VSCode์์ ๋ถ๊ฐ๋ฅํ ์ด์ ๋ ๋ฌด์์ ๋๊น?
@SharakPL ์ค๋ช ? 3 ๋ ๋ DEAD ์ค๋ ๋๋ฅผ ์ฝ์ผ์ญ์์ค. ๊ทธ๊ฒ์ ์ผ์ด๋์ง ์์ ๊ฒ์ด๋ผ๊ณ ์ค๋ช ํ ๊ฒ์ ๋๋ค.
๊ทธ๊ฒ์ emnet๋ฅผ ์ฌ์ฉํ๋ PHP์ emnet, HTML์ ๊ฑฐ๊ธฐ์ @bsienn .. ๊ทธ๊ฒ์ ๋ฐฐ์ฐ๋ ค๊ณ https://docs.emmet.io/ ... ์ด์จ๋ ์ผํ๊ณ ์์ด์ฃผ์ธ์ ...
@bsienn ์ด ๋์๊ฒ ์ด๊ฒ์ ์ค๋ช ํฉ๋๋ค. ์ ํฌ๊ธฐ ๊ฐ์ด ๋ฌธ์ ๋ฅผ ์ข ๊ฒฐํด์ผํ๋ ์ด์ ๊ฐ๋ฉ๋๊น?
@benyaminl emmet์ ๊ด์ฐฎ์ง ๋ง ์ ํ๊ทธ๋ฅผ ๋ง๋ค ๋๋ง ์๋ํฉ๋๋ค. ๋ด๊ฐ ํ๊ทธ๋ฅผ ํธ์งํด์ผ ํ ๋, ์ฆ ๋งํฌ์ ์์ฑ์ ์ถ๊ฐ ํด์ผ ํ ๋ ์ธ๋ชจ๊ฐ ์์ต๋๋ค.
์ ํํํ ๋ฌด์ํ๋ คํ๋ ์๊ฐ์ด์ผ .. ์ด์จ๋ ์ฌ์ค์ด์ผ. ์์ง๋
๋๊ตฐ๊ฐ๊ฐ ๊ทธ๊ฒ์ ๊ตฌํํ๋ ค๊ณ ํ๋ค๊ณ ์๊ฐํ๋ฉด ์ฝ์ง ์์ต๋๋ค.
My Asus Pegasus X005์์ ๋ณด๋
Pada tanggal Kam, 2018 ๋
6 ์ 14 ์ผ 19.26, SharakPL [email protected]
menulis :
@bsienn https://github.com/bsienn ์ค๋ช ํด์ฃผ์ธ์.
์ด ์ค๋ ๋๋ฅผ ๋ซ์์ผํ๋ ์ด์ ์ฌ์ผํฉ๋๊น?@benyaminl https://github.com/benyaminl emmet์ ๊ด์ฐฎ์ง ๋ง
์ ํ๊ทธ๋ฅผ ๋ง๋ค ๋ ์๋ํฉ๋๋ค. ํ๊ทธ๋ฅผ ํธ์งํด์ผ ํ ๋ ์ธ๋ชจ๊ฐ ์์ต๋๋ค.
๋งํฌ์ ๋ํ ์ผ๋ถ ์์ฑ <# m_4226514043244462616_issuecomment-359139115>,
php ํ์ผ์์ html์ ๋ํ ์ง๋ฅ ์ดโ
๋น์ ์ด ์ธ๊ธ ๋์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ฐ๊ณ ์์ต๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ณ GitHub์์ ํ์ธํ์ธ์.
https://github.com/Microsoft/vscode/issues/670#issuecomment-397275321 ,
๋๋ ์ค๋ ๋ ์์๊ฑฐ
https://github.com/notifications/unsubscribe-auth/ACr9NMadCpzlgPV4BjF9uM2kTA4DlOz-ks5t8lZdgaJpZM4Gpk-J
.
Intellisense์ ๋ํด ๋๋ฌด ๋ง์ ๊ฒ์ ์ฝ์์ผ๋ฏ๋ก Brackets.io๋ฅผ ์ฌ์ฉํ์ฌ VS Code๋ก ๋ณํํ๋ ค๊ณ ํฉ๋๋ค. ์ด ๊ธฐ๋ณธ ๊ธฐ๋ฅ์ด ๋๋ฅผ ๋ฐฉํดํฉ๋๋ค. 3 ๋ ๋์ ๋์๊ฐ๊ณ ์๋ฌด ์ผ๋ํ์ง ์์ ๊ฒ์ด ๋ฌด์ญ์ต๋๋ค.
ํ๋ฌ๊ทธ์ธ์ด๋ .html ์๋ ์์ฑ์ ์ฌ์ฉํ๊ธฐ ์ํด .php ํ์ผ์ ๋ฑ๋กํ๋ ๋ฐฉ๋ฒ์ด ์๋์ง ์๋ ์ฌ๋์ด ์์ต๋๊น?
๋น์ ์ ๋์์ ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.
์ด ๋ฌธ์ ์ ๋ํ ์์์ด ์์ต๋๊น?
html + css + js๊ฐ ์ ์๋ํ๋ html ํ์ผ์์ ํผํฉ ํธ์ง์ ์ํด ๋์ผํ ๊ตฌํ์ ์ํํ๋ค๊ณ ์๊ฐํฉ๋๋ค.
๋ ๋ค๋ฅธ ๋์์ ํ์ฅ API์์ ํ์ผ ๋ฐ์ท๋ฅผ๋ณด๊ณ ์ ํํ ์ธ์ด๋ฅผ ๋ณ๊ฒฝํ๋ ๋ฐฉ๋ฒ์ ๊ตฌํํ๋ ๊ฒ์ ๋๋ค.
PHP์ ์ค์ฒฉ ๋ HTML์ ์ง์ฆ์ด ๋ฌ๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ง๋ค์์ต๋๋ค. ์ด๊ฒ์ html.format ๋ฐ PHP์ Format HTML์ ๋ํ ํธ์ง๊ธฐ ํ์์ ๋ํ ๊ธฐ๋ณธ ์ค์ ์ ๊ธฐ๋ฐ์ผ๋ก ํ์์ ์ง์ ํด์ผํฉ๋๋ค.
๋ํ ๋๋ ์์ ํ ์๋ ์์ฑ์ ์ป์ต๋๋ค.
@ RiFi2k ์๋ ํ์ธ์! ํ์ฅ ํ๋ก๊ทธ๋จ์ ์ค์นํ๋ ค๊ณ ํ์ง๋ง ์ ์๊ฒ๋ ์๋ฌด๋ฐ ๋ณํ๊ฐ ์์ต๋๋ค. ์ค๋ช ์์์ด ํ์ฅ์ ๋ํด ํ ์ผ์ด ์์ต๋๋ค.
@BxDev ์๋
ํ์ธ์! ๊ทธ๋์ ๋น์ ์
html.format.enable = true
editor.formatOnSave = true
html ํ์ ๋๋ ์ํ๋ ํธ์ง๊ธฐ ํ์๊ณผ ๊ด๋ จ๋ vscode์ ๊ธฐํ ์ค์ ์ ์ค์ ํฉ๋๋ค.
๊ทธ๋ฐ ๋ค์ .php ํ์ผ์์ ์ค์ฒฉ ๋ HTML์ ํ์์ ์ง์ ํ๋ ค๊ณ ํ๋ฏ๋ก ๋ค์๊ณผ ๊ฐ์ ์ฝ๋๊ฐ ํฌํจ ๋ .php ํ์ผ์ด ์๋์ง ํ์ธํด์ผํฉ๋๋ค.
<?php
$hi = true;
?>
<div class="correct-formatting">
<div class="wrong-formatting">
</div>
</div>
์ ์ฅํ ๋ HTML div์
์ฌ์ ํ ๋ฌธ์ ๊ฐ์๋ ๊ฒฝ์ฐ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋๋ก ๋์ ๋๋ฆฌ๊ฒ ์ต๋๋ค.
@ RiFi2k ๋ต์ฅ ์ฃผ์
์ ๊ฐ์ฌํฉ๋๋ค!
๋๋ ์ด๊ฒ์ ์ฌ์ฉ์ ์ค์ ์ ์๋๋ค.
"html.format.enable": true, "editor.formatOnSave": true
๊ทธ ํ, ๋๋ ๋น์ ์ ์์ ์ ํจ๊ป PHP ํ์ผ์ ๋ง๋ค์์ง ๋ง ์๋ํ์ง ์์ต๋๋ค :-(
@BxDev ์ฌ์ค ๊ทธ๊ฒ์ ์๋ฒฝํ๊ฒ ์ผ์ ํ ๊ฒ์ฒ๋ผ ๋ณด์ ๋๋ค.
<?php
$hi = true;
?>
<div class="correct-formatting">
<div class="wrong-formatting">
</div>
</div>
...์
<?php
$hi = true;
?>
<div class="correct-formatting">
<div class="wrong-formatting">
</div>
</div>
๊ทธ๊ฒ ๋ค์ ๋๋ค. ๊ธฐ๋ฅ์ ๋ํด ํผ๋ํ์ง ์์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
@ RiFi2k ohh yeea :) ๋๋ ๊ทธ๊ฒ์ ์ป์๋ค :) ๊ทธ๊ฒ์ ๋ํด ์ฃ์กํฉ๋๋ค. ํ์ง๋ง ์ ์๊ฒ์์ด ๋งค์ฐ ์ค์ํ ๊ฒ์ ํผํฉ ๋ php / html / js / css ๋ฌธ์์ ํ์ด๋ผ์ดํธ ์ ํ๊ทธ์ ๋๋ค. ์์ ํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค!
์ด๊ฒ์ 3 ๋
๋ ๋ฌธ์ ์ด๋ฉฐ ๊ฒฐ์ฝ ํด๊ฒฐ๋์ง ์์ ๊ฒ์
๋๋ค.
์ด๊ฒ์ ํธ์ง์์๊ฒ์์ด์ ๋งค์ฐ ๊ธฐ๋ณธ์ ์ธ ๊ฒ์ด๋ฉฐ, ์ผ์์ ์ธ ์์
์ ์์ฒญ๋๊ฒ ์ง์ฆ๋๊ฒ ๋ง๋ค๊ณ ์์ต๋๋ค.
ํนํ ์ต๊ทผ์ VScode๊ฐ ๋ชจ๋ ์ข ๋ฅ์ ๋ฉ์ง ๊ธฐ๋ฅ์ ์ถ๊ฐํ์ง๋ง ํต์ฌ ๋ฌธ์ ๋ฅผ ๋ฌด์ํจ์ผ๋ก์จ ๋ค๋ก ์ด๋ํ๊ณ ์๋ค๊ณ ๋๋ผ๊ธฐ ๋๋ฌธ์ ์๋ง๋ ST3๋ก ๋ค์ ์ ํํด์ผ ํ ๊ฒ์ ๋๋ค.
@TheDutchCoder ์์ฆ์๋ ์๋ฌด๋ PHP๋ฅผ ์ฝ๋ฉํ๊ณ ์ถ์ดํ์ง ์๊ธฐ ๋๋ฌธ์ ๋๋ค. :๋
@steebcheen ์ฃผ์ ๋ฅผ ๊ณ์ ์ ์งํ์ญ์์ค. ๊ฐ์ฌ
@Tyriar ์ด์จ๋ ๋๊ตฐ๊ฐ๊ฐ ์ด๊ฒ์ ์ํด ํ ๋น ๋์์ต๋๊น? ์๋๋ฉด ๊ทธ๋ ์ง ์์ต๋๊น?
ํธ์ง : ์ค ํ ๋น๋์์ต๋๋ค .. ์ข์
@ RiFi2k ์๋ ํ์ธ์, ๋์ ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค! ํ์ฅ์ ์๋ํ์ง๋ง ์๋ํ์ง ์์ต๋๋ค. ์ ๊ณต ํ ์ค์ ์ ์๋ํ์ง๋ง ์ฌ์ ํ ์ฃผ์ฌ์๊ฐ ์์ต๋๋ค. ์๋ง๋ ์ฌ์ฉ์ค์ธ PHP ํฌ๋งทํฐ์ ๋ฌ๋ ค ์์ต๋๊น? ์ฒ์์ PHP ํ์ํ๋ฅผ ํ์ฑํํ๊ธฐ ์ํด ์ด๋ค ํ์ฅ์ ์ฌ์ฉํ ๊ฒ์ ์ ์ํฉ๋๊น?
์ข์์, ๋น ๋ฅธ ์ ๋ฐ์ดํธ : ์ ์ฅ์ ์๋ํฉ๋๋ค. ํ๋ฅญํฉ๋๋ค! ์ค๋ฅธ์ชฝ ํด๋ฆญ ์ปจํ ์คํธ ๋ฉ๋ด์์๋ ์๋ํ์ง ์์ต๋๋ค. ๋๋ ๊ทธ๊ฒ์ด ๊ณต์ ํ ํํ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค :)
๋๋ ๋ฌธ์ ๊ฐ ๋ด ์ทจํฅ์๋ง ์๋ค๊ณ ์๊ฐํ์ต๋๋ค. HTML ์ฝ๋๋ฅผ PHP์ ์์์ ๋ ํ์์ ํญ์ ๋๋ ์ ๋ ํญ ํฌ๊ธฐ๊ฐ 4๋ก ๋ ๋ค์ ์ ํญ์ ์ถ๊ฐํ๋ ๊ฒ์ฒ๋ผ ์ ๋ง ์ง์ ๋ถํฉ๋๋ค. ํญ ํฌ๊ธฐ๋ 2์ ๋๋ค. VSC ๋ก์ ์ ํ์์. ์ง๊ธ์ ST3์ ๋จธ๋ฌผ๋ฌ์ผํ๋ค๊ณ ์๊ฐํฉ๋๋ค.
@thanasisHS ์ฃ์กํฉ๋๋ค.
๋ด ํ์ฅ์ ์ ์ฅ์ ํ์์ด ๊ตฌ์ฑ๋ ๊ฒฝ์ฐ์๋ง ์คํ๋๋ฉฐ ์ค์ PHP ํฌ๋งทํฐ๋ก ์คํ๋์ง ์๊ณ onBeforeSave์์ ์คํ๋ฉ๋๋ค.
๋๋ ๋ด ์ ์ฒด ๊ตฌ์ฑ์ ๋ช ๊ฐ์ง ์์ ์ผ๋ก ๊ฒ์ํ์ผ๋ฉฐ ์๋ฒฝํ๊ฒ ๋ง๋๋ ๋ฐ ๋ช ๋ฌ์ด ๊ฑธ๋ ธ์ต๋๋ค. ํ์ํ๋ฅผ ์ํด PHPCBF๋ฅผ ์ฌ์ฉํ์ง๋ง ์ด๊ฒ์ ์ฌ์ฉํฉ๋๋ค. 300 ๊ฐ์ ์ค์น ๋ง ์๋ค๋ ๊ฒ์ ์๊ณ ์์ง๋ง ๋ชจ๋ ์ฃฝ์ phpcbf ํ์ฅ์ ์ฝ๋๋ฅผ ์
๋ฐ์ดํธํ๊ณ ๋ณํฉํ์ต๋๋ค. ๊ทธ๊ฒ์ ๋์
๋๋ค.
https://marketplace.visualstudio.com/items?itemName=ValeryanM.vscode-phpcbf
๋ค๋ฅธ ์ฌ๋์ด ๋ด ๊ตฌ์ฑ์ ๊ด์ฌ์ด ์๋ค๋ฉด ์ฌ๊ธฐ์ ๋ด ์์ ์ด ์์ต๋๋ค. php, js, scss, css, vue-eslint, stylelint, phpcbf, phpcs, prettier๋ก ์๋ ์์ ์ง์ ๋ฐ linting์ ์ํํฉ๋๋ค. ๋ชจ๋ ์ค์ ์ ์๋ฃํ๋ฉด ๋นํธ์ ๋๋ค.
๊ธ๋ก๋ฒ
https://gist.github.com/RiFi2k/d43e84788b1798252f30cac28b6f6eda
๊ณํ
https://gist.github.com/RiFi2k/42e294f3785bdbbc2641c4b18955e16f
๋ชจ๋ dotfile, composer.json, package.json, php ๊ท์น ์ธํธ
https://gist.github.com/RiFi2k/8b753d1f12a36760f3ee6e1322daf708
์ด ๋ฌธ์ ๋ฅผ ๋ง๋ฌด๋ฆฌํฉ๋๋ค. ์์ ๋ฌธ์ ์ ๋ํ ์ค๋ช ์์ ์ด์ ๋ฅผ ์ค๋ช ํ์ต๋๋ค.
๊ฐ์ฌ. ์ฝ๋๋ ๋งค์ผ ์ ์ ๋ ๋ง ๊ฐ์ง๊ณ ์์ต๋๋ค. Microsoft์์์ด ๋ชจ๋ FOSS ์ด๋์ ํฐ๋ธ์ ๋ํด ๋ฉ์ง๋ค๊ณ ์๊ฐํ์ง๋ง ์ฌ์ ํ ๋ ๋ฆฝ์ ์ธ ๊ฒ์ ์๋์ง๋ง Github ๋ฐ Azure๋ฅผ ๊ด๊ณ ํ์ฌ ์์ต์ ์ฐฝ์ถํ๋ ๋ฐ ์ค์ ์ ๋ก๋๋ค.
@ jens1o ํผ๋ ์ค๋ฝ์ต๋๋ค.์ด ๊ฒฐ์ ์ OSS ์ํ๊ณ ์ก์ฑ์ ๊ดํ ๊ฒ์ ๋๋ค. ์ฐธ์กฐ ๋ ํ์ฅ์ OSS ํ๋ก์ ํธ์ ๋๋ค. ๋ ์ข๊ฒ ๋ง๋ค ์ ์๋๋ก ๋์์ฃผ์ธ์. VS Code ํ์ ๋ฆฌ์์ค๋ ๋ฌด์ ํ์ด ์๋๋๋ค.
๋ํ ์ฐ๋ฆฌ ์ ํ๋ ๊ฐ๋ น์ ์์ง ๋ง์๊ณ ์ ์คํ๊ฒ ์ํตํฉ์๋ค.
์ปค๋ฎค๋ํฐ๊ฐ ํ์คํ ์ํ์ง๋ง ๋ค๋ฅธ ์์
๋ณด๋ค ์์
์ ์ฐ์ ์์๋ฅผ ์ง์ ํ๋ ์ด์ ๋ฅผ ์ดํดํ์ง ๋ชปํฉ๋๋ค. ๋๋ "๋ฌธ์ ๊ฐ์"์ "๋ฒ์ ์ธ", ๊ทธ๋ฆฌ๊ณ ์ค, ์, "์ ํ๋ ์์"(์ปค๋ฎค๋ํฐ๊ฐ ์ฌ๊ธฐ์์๋ ์ด์ ์
๋๋ค) ๋ง ๋ฃ์ต๋๋ค. ๊ณง ์ค์ง ์์ ์ผ์ ๋ํด ๋ถํํ๋ ์ฌ๋์ ์์ง๋ง ์ปค๋ฎค๋ํฐ์ ์๊ตฌ์ ์กฐ๊ธ ๋ ์ง์คํ๋ฉด ํ์คํ ๋์์ด ๋ ๊ฒ์
๋๋ค. ์๋ฌด๊ฒ๋ ์ค์ผ์ํค์ง ์๋๋ผ๋ ์ด์ ๋ฒํธ๋ฅผ ๋ฎ๊ฒ ์ ์งํด์ผํ๋ ์ด์ ๋ ๋ฌด์์
๋๊น? ์ ๋์๋ ์ฝ๋ ๋ก๋๋งต์ด 2 ๋ฒ์ ๋ฐ๋ณต์ ํต๊ณผํ์ต๋๋ค. ์ด์ ๋ ์ ๋ฃ ๋ฐ ํ์ฌ ์ ํ (์ : GitHub, ์์ )์ ํตํฉํ์ฌ ๋งค์ผ Build();
์ ์ฒซ ๋ฒ์งธ ๋ฐ๋ชจ ์ดํ๋ก ์ฌ์ฉํ๊ณ ์์ต๋๋ค. Microsoft).
์ด ์ปค๋ฎค๋ํฐ์์ ๋ ์ด์ ํ์๋ฐ์ง ๋ชปํ๋ค๊ณ ๋งํ๊ณ ์์ต๋๋ค. (์์งํ ์ค๋งํฉ๋๋ค), ์ด๋ค ์ ์ผ๋ก๋ ๋น์ ์ ๊ฐ์ธ์ ์ผ๋ก ๊ณต๊ฒฉํ์ง ์์ผ๋ฏ๋ก ์ฌ๊ธฐ์ COC๋ฅผ ์ฐธ์กฐ ํ ์ด์ ๊ฐ ์์ต๋๋ค. ๊ณต๊ฐ ํ ๋ก ์ํ๋ ๊ฒ์ FOSS ์ํํธ์จ์ด์ ์ผ๋ถ์ ๋๋ค.
๊ทธ๋ฌ๋ COC์ ๋ํด ๋ค์๊ณผ ๊ฐ์ด ์ธ์ฉํ๊ฒ ์ต๋๋ค.
์๊ฒฌ ๋ถ์ผ์น ์ดํด
๋๋ ๋น์ ์ดํ๋ ์ ์น์ ๋์ํ์ง ์๊ธฐ ๋๋ฌธ์ ๋น์ ์ด ๋๋ฅผ ํ์ํ๋ ค๋ ์ด์ ๋ฅผ ์ดํดํ์ง ๋ชปํฉ๋๋ค.
๋๋ ๋น์ ์ด ์ ๋น์ ์ ์ ์น๋ฅผ ๋ฐ๊พธ ์๋์ง ์ดํดํ๋ ค๊ณ ๋ ธ๋ ฅํ๊ณ ์์ต๋๋ค.
@egamma ์ด ๋ฌธ์ ๋ฅผ ์ข ๊ฒฐํ๋ ์ด์ ๊ฐ ํฉ๋ฆฌ์ ์ด๋ผ๊ณ ์๊ฐํ์ง ์์ต๋๋ค. Visual Studio ์ฝ๋๊ฐ ๋ชจ๋ ๊ธฐ๋ฅ์ ์ฆ์ ์ ๊ณต ํ ์์๊ณ ์ ๊ณตํด์๋ ์๋๋ค๋ ๊ฒ์ ์๊ณ ์์ง๋ง, PHP ์ธ์ด์ ๋ํ HTML ์ง์์ PHP ํธ์ง๊ธฐ์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋ฅ ์ค ํ๋ ์ฌ์ผํฉ๋๋ค. PHP์ ๋๋ถ๋ถ์ ๊ธฐ๋ฅ์ ํ์ฅ ๊ธฐ๋ฅ์ ํตํด ์ ๊ณต๋์ด์ผํ์ง๋ง์ด ๊ธฐ๋ฅ์ ์ ๊ณต๋์ง ์์์ผํฉ๋๋ค. ๋ง์ ํธ์ง๊ธฐ๊ฐ์ด ๊ธฐ๋ฅ์ ๊ฐ์ง๊ณ ์์ผ๋ฉฐ, ๋จ์ํ ํ ์คํธ ํธ์ง๊ธฐ ์ธ Notepad ++์๋์ด ๊ธฐ๋ฅ์ด ์์ต๋๋ค. ์ด๊ฒ์ ๊ธฐ๋ณธ PHP ๋ฌธ๋ฒ์ ์ผ๋ถ์ด๋ฉฐ PHP ์์ด๋ PHP๋ฅผ ์์ฑํ ์ ์์ต๋๋ค. ํธ์ง์๋์ด ๊ธฐ๋ฅ์์ด PHP๋ฅผ ์ง์ํ๋ค๊ณ ๋งํด์๋ ์๋ฉ๋๋ค. PHP๋ฅผ ์ฌ๋ฐ๋ฅธ ๋ฐฉ์์ผ๋ก ์ฝ์ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค.
HTML ํ์ผ์ Javascript๊ฐ ์ ์๋ํ๊ณ HTML์ CSS๊ฐ vscode์ ํ์ฅ์์์ด ์ ์๋ํ๋ ์ด์ ๋ ๋ฌด์์ ๋๊น? vscode์๋์ด ๊ธฐ๋ฅ์ด ์์ง๋ง PHP ์ฉ์ผ๋ก ๋น์ทํ ๊ธฐ๋ฅ์ ๋ง๋ค๊ณ ์ถ์ง๋ ์์ ๊ฒ ๊ฐ์ต๋๋ค. ๋ถ๊ณตํํฉ๋๋ค.
์ด ๊ธฐ๋ฅ์ PHP ์ฌ์ฉ์์๊ฒ ๋งค์ฐ ์ค์ํ๋ฉฐ, ๋๋ถ๋ถ์ ์ฌ์ฉ์๋ ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ๊ฒ์ํ์ง ์์ผ๋ฉฐ ์ด๋ฌํ ๊ธฐ๋ณธ์ ์ด๊ณ ํ์ํ ๊ธฐ๋ฅ์ ์ป๋ ๋ฐ ๋์์ด๋๋ ํ์ฅ ๊ธฐ๋ฅ์ ๋ํด ์๋ฌด๊ฒ๋ ๋ชจ๋ฆ ๋๋ค. ์ด๋ฌํ ์ฌ์ฉ์๋์ด ํธ์ง๊ธฐ๋ฅผ ๋ค์ด๋ก๋ํ์ฌ ์ค์นํ๊ณ ์ด "๋ฒ๊ทธ"๋ฅผ ์ฐพ์ ๋ค์ ์ฆ์ ์ ๊ฑฐํ๊ณ vscode์ ๋ํด ๋งค์ฐ ๋์ ์ธ์์๋ฐ์ ์ ์์ต๋๋ค. ๊ทธ๋ค์ ์ฌ๊ธฐ์ ์๋ฌด ๋ง๋ํ์ง ์์ ๊ฒ์ ๋๋ค. ์ฌ๊ธฐ์์ ์๊ฒฌ์ ๋๋๊ณ ์ถ์ ๋ชจ๋ ์ฌ์ฉ์๋ vscode๊ฐ ๋ ๋์์ง๊ธฐ๋ฅผ ์ง์ ์ผ๋ก ์ํ๋ ์ฌ๋๋ค์ ๋๋ค. ์ด ๊ธฐ๋ฅ์์ด PHP ์ฝ๋๋ฅผ ์์ฑํ๋ ๋๋์ ์ ๋ง ๊ณ ํต ์ค๋ฝ์ต๋๋ค. ๋ธ๋ก์ ๊ตฌ๋ถํ ์์๊ณ html ํ๊ทธ๋ฅผ ์๋์ผ๋ก ์ธ๊ฑฐ๋ ํ์ผ ํ์์ php์์ html๋ก, ๊ทธ๋ฆฌ๊ณ html์์ php๋ก ์ฌ๋ฌ ๋ฒ ๋ณํํด์ผํฉ๋๋ค. ๋ด๊ฐ vscode์์ ์๋ํ ๋ค๋ฅธ ๋ชจ๋ ์ธ์ด๋ ํ์ฅ ํ๋ก๊ทธ๋จ์ ์ค์นํ์ง ์์ผ๋ฉด ๊ทธ๋ ๊ฒ ๋์ ๊ฐ์ ์ ๊ฐ์ง ์์ ๊ฒ์ ๋๋ค. ์ฌ์ฉ์๋ ์ด์ ๋ฅผ ๋ชจ๋ฅด๊ณ ์ฌ์ฉ์ ๊ฒฝํ์๋ง ๊ด์ฌ์ด ์์ต๋๋ค. ์ด๊ฒ์ ๋ํด ๊ณ ๋ คํ๊ณ ๋ฌด์ธ๊ฐ๋ฅผํ์ญ์์ค. ์ฝ๊ฐ์ ํ์ด๋ผ์ดํธ๋ฅผ ์ถ๊ฐํ๋ ๊ฒ๋ ์ข์ต๋๋ค.
๋์ํฉ๋๋ค. @popcorner ๊ฐ ๋ง์ต๋๋ค. ์ด๊ฒ์ PHP ๊ฐ๋ฐ์์๊ฒ ํ์์ ์ด๋ฉฐ WordPress๊ฐ ์ธํฐ๋ท์ 30 % ์ด์์ ์ง์ํ๊ณ ๊ฑฐ์ ๋ชจ๋ ํ ๋ง ๋๋ ํ๋ฌ๊ทธ์ธ์ ๋ชจ๋ ํ ํ๋ฆฟ ํ์ผ์ HTML์ด ์ค์ฒฉ ๋ PHP๊ฐ ์์ต๋๋ค. ๊ทธ๋์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ด๊ฒ์ ํ์๋กํ๋ ์์ฒญ๋๊ฒ ๋ง์ ์ฌ์ฉ์๋ค์ด ์์ต๋๋ค.
์ด์ ์ ๋ ์ค์ ๋ก์ด ๋ชจ๋ ๋ฌธ์ ์ ํต์ฌ์ด ์ฌ๋ฌ ์์ ํ์ฅ๋ช ์ ๋์์ ๋ฑ๋ก ํ ์ ์๋ค๋ ์ฌ์ค์ ์๋ค๊ณ ์๊ฐํฉ๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ๊ทธ ํ ์๋ ์ผ์ข ์ ๊ฒฝ์ฃผ๊ฐ ์์ผ๋ฉฐ ์ค์ง ํ ์ฌ๋ ๋ง ์ด๊ธธ ์ ์์ผ๋ฉฐ, ์ฌ์ฉ์๋ ์ธ์ ์ด๋ค ๊ฒ์ ์คํํ๋ ค๊ณ ํ๋์ง, ์ด๋ค ๊ฒ์ด ์ค์ ๋ก ์คํ๋์๋์ง๋ฅผ ์ฌ์ฉ์๋ก ๋ณผ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ PHP ํ์ผ์ ๊ฒฝ์ฐ HTML์ ํตํด PHP ์ฝ๋๋ฅผ ์ํํ๋ ํ์ ์ง์ ํ์ฅ์ ์ฌ์ฉํ๊ฒ๋ฉ๋๋ค. ๊ทธ๋ฌ๋ ํฌ๋งท ํ์ฅ์ ์ฐ๊ฒฐํ ์ ์๊ณ ํ ์์ ๋ ๋ณ๊ฒฝ ๊ฐ๋ฅํ ๊ฒ์ด ์๋ค๋ฉด PHP์ HTML์ ๋ฑ๋กํ ๋ค์ ์ฒซ ๋ฒ์งธ / ๋ง์ง๋ง์ผ๋ก ์คํํ ์ฐ์ ์์ / ์์๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ์ด ์ ์ฒด ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค.
1 ๋จ๊ณ PHPCBF ๋๋ ์ ์ฌํ PHP ํ์ ํ์ฅ์ ์คํํฉ๋๋ค.
๋ ๋ฒ์งธ ๋จ๊ณ ๋ js-beautify html ํ์ํ๋ฅผ ์คํํฉ๋๋ค.์ด ํ์์ ์ด์จ๋ ๋ชจ๋ PHP๋ฅผ ๊ฑด๋ ๋ฐ๊ณ HTML ๋ง ์ํํฉ๋๋ค. ์ด๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ ํ์ฅ ํ๋ก๊ทธ๋จ ์ธ PHP์์ HTML ํ์ํ์์ ์ํํ๋ ๊ฒ๊ณผ ๋๊ฐ์ ์์
์
๋๋ค. ๊ทธ๋ฌ๋ ๊ธฐ๋ณธ ์์ ๋ฑ๋ก์ ์ฌ์ฉํ๋ ๋์ onBeforeSave๋ฅผ ์คํํด์ผํ์ง๋ง ์ด๊ฒ์ด ํด๊ฒฐ์ฑ
์ด ๋ ํ์๋ ์์ต๋๋ค.
์์ฝํ์๋ฉด ๋งค์ฐ ํ์ํ์ง๋ง ๋ฌธ์ ๋ฅผ ์์ ํ๊ฑฐ๋ ์์ ํ์ง ์๋ ๋์ ์์ ์์ด๋์ด๋ฅผ ์ดํด๋ณด๋ฉด ์ฌ์ฉ์์ ํ์ฅ ๊ฐ๋ฐ์๋ฅผ ์ํด ๋ชจ๋ ์ธ์ด์ ํ์์ ๋ํด ๋ ๋์ ๊ฒฝํ์ ํ ์ ์์ต๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
๋๋ ๋์ธ ์ ์์ง๋ง ๋์๊ฒ์ ๋ ๋ค๋ฅธ +1000. PHP์ HTML / CSS / JS๋ ํผํฉ ํ์ผ๋ก ์ผ๋ฐ์ ์ ๋๋ค. ์ ์ฒด Visual Studio + VS.php๋ฅผ ์ฌ์ฉํด ๋ณด์์ต๋๋ค-๋ํ ์ง์๋์ง ์์ต๋๋ค. PHP๋ฅผ ์ง์ํ๋ ๋ชจ๋ Microsoft ๊ฐ๋ฐ ๋๊ตฌ์์ ์ด๊ฒ์ด ์ ๊ฐ๊ณผ๋๋์ง ๊ณ์ ๊ถ๊ธํฉ๋๋ค. ์, PHP ์ง์์ด ์์ง๋ง HTML / CSS / JS์ ๋ํ IntelliSense (์ฝ๋ ์์ฑ ๋ฐ ์ฝ๋ ์ ์)๋ ์์ผ๋ฉด ์ธ๋ชจ๊ฐ ์์ต๋๋ค.
HTML์ JS ๋ธ๋ก ๋ฐ ์ธ๋ผ์ธ CSS๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค.
settings.json์์ ์ ์ํ๋ฉด :
"files.associations": {"*.php": "html"},
... PHP IntelliSense (๋ถ๋ช ํ)๊ฐ ์๋ํ์ง ์๊ณ HTML์ด ์์๋ฉ๋๋ค. ๊ทธ๋ฌ๋
style=" ...something... ";
๋ฅผ ์ฌ์ฉํ๋ ์ธ๋ผ์ธ -CSS๋ ์คํ์ผ ์์ฑ์ ๋ฐ์ดํ ์ฌ์ด์ ์ธ ๋ CSS ์์ฑ์ ์ ๊ณตํ์ง ์์ต๋๋ค.๋ง์ฐฌ๊ฐ์ง๋ก
<script>
๋ธ๋ก์ ์์ํ๋ฉด .js ํ์ผ์ ์ด๋ฉด ์ ์์ ์ผ๋ก ๋ฐ์ํ๋ ๋์ JS ์ฉ IntelliSense๊ฐ ์ ๊ณต๋์ง ์์ต๋๋ค.๋๋ ๋ค์๊ณผ ๊ฐ์ ์ ์์์ง์งํฉ๋๋ค (๋ ์ฌ์ด ๊ฒฝ์ฐ).
<?php ... ?>
์์ PHP IntelliSense๋ฅผ ์์ํด์ผํฉ๋๋ค.<?php ... ?>
์ธ๋ถ์์ HTML IntelliSense๋ฅผ ์์ํด์ผํฉ๋๋ค.๋ฟ๋ง ์๋๋ผ
<style> ... </style>
๋ฐstyle=" .... "
CSS IntelliSense๋ฅผ ์์ํด์ผํฉ๋๋ค.<script ... >
๋ฐ<script> ... </script>
JS IntelliSense๋ฅผ ์์ํด์ผํฉ๋๋ค.๋ํ ๊ฐ๋ฅํ๋ค๋ฉด @TheColorRed ์ ์ ์์
<?php ... ?>
ํ์ง๋ง HTML IntelliSense๋ฅผ ์ ํํ๋ ๊ฒ์ ๊ณ ๋ คํด์ผํ๋ ๊ฒ๋ณด๋ค$string="..."
๊ฐ์ ๋ฌธ์์ด์ ์์ฑํ๊ณ ์์ต๋๋ค. ๋ฌธ์ ๋ PHP ๊ฐ๋ฐ์๊ฐ ์ข ์ข ๋ค์๊ณผ ๊ฐ์ ๊ฒ์ ์ฌ์ฉํ๋ค๋ ๊ฒ์ ๋๋ค.<?php
$something="test";
echo "<div><a href="http://sample.com">This is a ".$something."</a></div>";
$continue = "coding here ... etc";
?>
.. PHP ํ๊ทธ๋ฅผ ์ด๊ณ ๋ซ๋ ๋ธ๋ก์ ํญ์ ํผํ๋ ค๋ฉด ๋ค์๊ณผ ๊ฐ์ดํ์ญ์์ค.
<?php
$something="test"; ?>
<div>
<a href="http://sample.com">This is a <?php echo $something; ?></a>
</div>
<?php
$continue = "coding here ... etc";
?>
๋ํ @egamma ๋ ๊ฐ์ฌํ์ง ์๊ฑฐ๋ ๊ฒ์ผ๋ฅธ ์๋ฆฌ๋ฅผํ๋ ค๋ ๊ฒ์ ์๋์ง๋ง, ์ฐ๋ฆฌ ์ค ํ ๋ช ์ด ์ค์ค๋ก ์ฝ๋ฉ ํ ์์์๋งํผ ์ ๋ฅํ๊ณ ์ง์์ด ํ๋ถํ๋ค๋ฉด ์๋ ์ฒํ๋ ๋๊ธ๋๋ณ๋ก ๋์์ด๋์ง ์์ต๋๋ค. ๋ถํํ๋-๋๋ ์๋๋๋ค :-/ ๊ทธ๋ฌ๋ ๋ด๊ฐ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก ๋์์ ์ค ์ ์๋ค๋ฉด ๊ธฐ๋ปํ ๊ฒ์ ๋๋ค (๋จ์ง ์ ์์ ๋ํ ์๊ฒฌ์ด ์๋๋ผ ํ ์คํธ ๋ฑ์ผ๋ก).
์ด ๊ธฐ๋ฅ์ด ์กด์ฌํด์ผํ๋ค๋ ํฉ์๊ฐ ์๊ณ ,์ด ๊ธฐ๋ฅ์ด์๋ ํ์ฌ PHP ์ง์์ ๋๋ถ๋ถ์ PHP ๊ฐ๋ฐ์๋ฅผ์ํ ๋ถ๋ถ์ ์ธ ์ง์ ์ผ๋ฟ์ ๋๋ค.
์ถ์ ๊ทธ๋ฆฌ๊ณ ๋ค์ ๋งํ์ง๋ง, ๋นํ๊ฐ๋ก ๋ค๋ฆฌ๋ ๊ฒ์ ์๋๋๋ค. ์ ๋ ์ง๊ธ๊น์ง VS Code๋ฅผ ์ ๋ง ์ข์ํ๋ฉฐ์ด ๋ฉ์ง ํ๋ก์ ํธ์ ๊ธฐ์ฌํ๊ณ ๊ณ์ ๊ธฐ์ฌํด ์ฃผ์ ๋ชจ๋ ๋ถ๋ค๊ป ๊ฐ์ฅ ๊ฐ์ฌํฉ๋๋ค!
ํธ์งํ๋ค:
๋จ์ํ ํ๋์ .ts ํ์ผ์ ๋ค๋ฅธ ์์ ์ ํฌํจ / ์ฐธ์กฐํ ๊น์?
์ : /languages/php/common/php.ts
ํฌํจ : /languages/html/common/html.ts
ํฌํจ : /languages/css/common/css.ts
ํฌํจ: ...
ํ๊ทธ / ์์ฑ / ํจ์ ์ด๋ฆ๊ณผ ๊ฒน์น๋ ๋ถ๋ถ์ด์์ ์ ์์ง๋ง ์ง๊ธ์ ์๋ฌด ๊ฒ๋ ๋ ์ค๋ฅด์ง ์์ต๋๋ค. IntelliSense์ ๊ฒฝ์ฐ ์์ด์ฝ์ด ์๋ก ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๋ฌธ์ ๊ฐ๋์ง ์๋๋ค๊ณ ์๊ฐํฉ๋๋ค. ๊ทธ๋ฐ ๊ฒฝ์ฐ์๋ ์์ ์ฝ๋ฉ ๋ง ์๋ง์ด ๋ ์ ์์ต๋๋ค ... ๋ด๊ฐ ๋ค๋ฅธ ๊ฒ์ ๋์น๊ณ ์์ต๋๊น?