{"id":575008,"date":"2025-06-16T13:58:00","date_gmt":"2025-06-16T12:58:00","guid":{"rendered":"https:\/\/blog.jetbrains.com\/?post_type=blog&#038;p=575008"},"modified":"2025-06-16T13:58:05","modified_gmt":"2025-06-16T12:58:05","slug":"how-phpstorm-helps-maintain-php-open-source-projects-interviews-and-real-world-examples","status":"publish","type":"blog","link":"https:\/\/blog.jetbrains.com\/ko\/blog\/2025\/06\/16\/how-phpstorm-helps-maintain-php-open-source-projects-interviews-and-real-world-examples\/","title":{"rendered":"PhpStorm\uc73c\ub85c PHP \uc624\ud508 \uc18c\uc2a4 \ud504\ub85c\uc81d\ud2b8\ub97c \uc720\uc9c0 \uad00\ub9ac\ud558\ub294 \ubc29\ubc95: \uc778\ud130\ubdf0\uc640 \uc2e4\uc81c \uc0ac\ub840"},"content":{"rendered":"\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"2560\" height=\"1440\" data-id=\"575572\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/06\/PS-social-BlogFeatured-1280x720-2x-3.png\" alt=\"\" class=\"wp-image-575572\"\/><\/figure>\n<\/figure>\n\n\n\n<p>PHP \uc5d0\ucf54\uc2dc\uc2a4\ud15c\uc740 \ucf58\ud150\uce20 \uad00\ub9ac \uc2dc\uc2a4\ud15c\ubd80\ud130 \ud14c\uc2a4\ud2b8 \ub77c\uc774\ube0c\ub7ec\ub9ac\uc640 \ub370\uc774\ud130\ubca0\uc774\uc2a4 \uacc4\uce35\uae4c\uc9c0 \ubaa8\ub4e0 \uac83\uc744 \uc9c0\uc6d0\ud558\ub294 \ub3c4\uad6c\ub97c \ub9cc\ub4dc\ub294 \uc5f4\uc815\uc801\uc778 \uac1c\ubc1c\uc790\ub4e4\uc774 \uc8fc\ub3c4\ud569\ub2c8\ub2e4. \uac01 \ud504\ub85c\uc81d\ud2b8 \ub4a4\uc5d0\ub294 \ucf54\ub4dc \ud604\ub300\ud654, \uc131\ub2a5 \uac1c\uc120, \uc5d0\ucf54\uc2dc\uc2a4\ud15c \uac1c\ubc1c\uc744 \uc704\ud574 \ub178\ub825\ud558\ub294 \uc804\ubb38 \ud300\uc774 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uc218\ub9ce\uc740 \ud300\uc774 \uc6d0\ud65c\ud55c \uc791\uc5c5\uc744 \uc704\ud574 <a href=\"https:\/\/www.jetbrains.com\/ko-kr\/phpstorm\/\" data-type=\"link\" data-id=\"https:\/\/www.jetbrains.com\/ko-kr\/phpstorm\/\" target=\"_blank\" rel=\"noopener\">PhpStorm<\/a>\uc744 \uc120\ud0dd\ud55c\ub2e4\ub294 \uc0ac\uc2e4\uc740 JetBrains\uc758 \ubaa8\ub4e0 \uad6c\uc131\uc6d0\uc774 \uc790\ub791\uc2a4\ub7ec\uc6cc\ud558\ub294 \ubc14\uc785\ub2c8\ub2e4. \uc774\ub294 <a href=\"https:\/\/www.jetbrains.com\/ko-kr\/phpstorm\/buy\/?section=discounts&amp;billing=yearly\" target=\"_blank\" rel=\"noopener\">\uc624\ud508 \uc18c\uc2a4 \uae30\uc5ec\uc790\ub97c \uc704\ud55c \ubb34\ub8cc \ubc0f \ud560\uc778\ub41c \ub77c\uc774\uc120\uc2a4 \ud504\ub85c\uadf8\ub7a8<\/a>\uc774 \uad11\ubc94\uc704\ud55c PHP \ucee4\ubba4\ub2c8\ud2f0\uc5d0 \uae0d\uc815\uc801\uc778 \uc601\ud5a5\uc744 \ubbf8\uce58\uace0 \uc788\uc74c\uc744 \ubcf4\uc5ec\uc8fc\ub294 \uc99d\uac70\uc785\ub2c8\ub2e4. \uc774 \uae00\uc5d0\uc11c\ub294 \ub6f0\uc5b4\ub09c PHP \ud504\ub85c\uc81d\ud2b8\uc640 \uadf8 \uc8fc\uc5ed\ub4e4\uc744 \uc18c\uac1c\ud569\ub2c8\ub2e4. PhpStorm\uc740 \ubcf5\uc7a1\ud55c \uc2dc\uc2a4\ud15c\uc744 \ub514\ubc84\uadf8\ud558\uac70\ub098 \ud14c\uc2a4\ud2b8 \ubaa8\uc74c\uc744 \uc720\uc9c0 \uad00\ub9ac\ud558\ub294 \ubaa8\ub4e0 \uacbd\uc6b0\uc5d0 \uc6cc\ud06c\ud50c\ub85c\ub97c \uac04\uc18c\ud654\ud558\uace0, \ub9c8\ucc30\uc744 \uc904\uc774\uba70, \uac00\uc7a5 \uc911\uc694\ud55c \uc791\uc5c5\uc778 \ube4c\ub4dc\uc5d0 \ub354 \ub9ce\uc740 \uc2dc\uac04\uc744 \ud560\uc560\ud560 \uc218 \uc788\ub3c4\ub85d \ub3c4\uc640\uc90d\ub2c8\ub2e4.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">PHPUnit<\/h2>\n\n\n\n<p><a href=\"https:\/\/sebastian-bergmann.de\/index.html\" target=\"_blank\" rel=\"noopener\">Sebastian Bergmann<\/a>\uc740 JUnit\uacfc \uac19\uc740 \ub3c4\uad6c\ub97c PHP\ub85c \uad6c\ud604\ud560 \uc218 \uc5c6\ub2e4\uace0 \uc0dd\uac01\ud55c \uad50\uc218\uc640 \ud1a0\ub860\uc744 \ud558\ub2e4\uac00 \ud559\uad50 \ud504\ub85c\uc81d\ud2b8\ub85c <a href=\"https:\/\/github.com\/sebastianbergmann\/phpunit\/\" target=\"_blank\" rel=\"noopener\">PHPUnit<\/a>\uc744 \uc2dc\uc791\ud588\uc2b5\ub2c8\ub2e4. \uc774\ud6c4 PHPUnit\uc740 20\ub144 \ub118\uac8c PHP \ud14c\uc2a4\ud2b8\uc758 \uc911\ucd94 \uc5ed\ud560\uc744 \ud574\uc654\uc73c\uba70 PHP \uac1c\ubc1c\uc790\uac00 \ud14c\uc2a4\ud2b8\ub97c \uc791\uc131\ud558\uace0 \uc720\uc9c0 \uad00\ub9ac\ud558\ub294 \ubc29\uc2dd\uc5d0 \uc601\ud5a5\uc744 \ubbf8\ucce4\uace0, \ubaa8\ub4e0 \uaddc\ubaa8\uc758 PHP \ud504\ub85c\uc81d\ud2b8\uc5d0\uc11c \uc120\ud0dd\ud558\ub294 \ud14c\uc2a4\ud2b8 \ud504\ub808\uc784\uc6cc\ud06c\ub85c \ub0a8\uc544 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p>PhpStorm\uc744 \uc0ac\uc6a9\ud558\uae30 \uc804\uc5d0 \uc628\uac16 PHP IDE\ub97c \uc0ac\uc6a9\ud574 \ubcf4\uc558\uc9c0\ub9cc, \uc0dd\uc0b0\uc131\uc744 \uc800\ud558\uc2dc\ud0a4\uc9c0 \uc54a\uace0 \uc624\ud788\ub824 \ub192\uc5ec\uc900 \uac83\uc740 PhpStorm\uc774 \ucc98\uc74c\uc774\uc5c8\uc2b5\ub2c8\ub2e4. \ucc98\uc74c\ubd80\ud130 \uc0ac\uc6a9\ud558\uae30\uac00 \uc815\ub9d0 \ud3b8\ud588\uc5b4\uc694. \uc774\uc81c PhpStorm\uc758 \ucf54\ub4dc \ud0d0\uc0c9\uc774\ub098 \ub9ac\ud329\ud130\ub9c1 \ub3c4\uad6c \uc5c6\uc774\ub294 \uc791\uc5c5\ud558\uc9c0 \ubabb\ud560 \uac83 \uac19\uc544\uc694.<\/p>\n<cite><em>\u2014 Sebastian Bergmann, PHPUnit \uc81c\uc791\uc790<\/em><\/cite><\/blockquote>\n\n\n\n<p>\ucd5c\uc2e0 \ubc84\uc804\uc778 PHPUnit 12\ub294 \ucf54\ub4dc\uc758 \uba85\ud655\uc131\uc744 \uc6b0\uc120\uc73c\ub85c \ud569\ub2c8\ub2e4. \uc8fc\uc694 \uac1c\uc120 \uc0ac\ud56d \uc911 \ud558\ub098\ub294 \uc804\uc6a9 API\ub97c \ud1b5\ud574 \ud14c\uc2a4\ud2b8 \uc2a4\ud141\uacfc \ubaa8\uc758 \uac1d\uccb4\ub97c \uba85\ud655\ud558\uac8c \uad6c\ubd84\ud558\ub294 \uac83\uc785\ub2c8\ub2e4. \uc774 \uc544\ud0a4\ud14d\ucc98 \uc804\ud658\uc740 \ud14c\uc2a4\ud2b8 \ucf54\ub4dc\uc758 \uc720\uc9c0 \uad00\ub9ac\uc640 \uac00\ub3c5\uc131\uc744 \uac04\uc18c\ud654\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\ud5a5\ud6c4 PHPUnit\uc740 JUnit XML\uc744 \ub300\uc2e0\ud560 \ud604\ub300\uc801\uc774\uace0 \ud655\uc7a5 \uac00\ub2a5\ud55c \ub300\uc548\uc778 Open Test Reporting \ud615\uc2dd\uc744 \uc9c0\uc6d0\ud560 \uc608\uc815\uc785\ub2c8\ub2e4. PHPUnit 12.2(2025\ub144 6\uc6d4)\uc5d0\uc11c \ucc98\uc74c \uc9c0\uc6d0\ud558\uace0, PHPUnit 13\ubd80\ud130\ub294 JUnit XML\uc744 \ub354 \uc774\uc0c1 \uc9c0\uc6d0\ud558\uc9c0 \uc54a\uc73c\uba70 PHPUnit 14\uc5d0\uc11c\ub294 \uc5c6\uc568 \uacc4\ud68d\uc785\ub2c8\ub2e4.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Doctrine DBAL<\/h2>\n\n\n\n<p><a href=\"https:\/\/github.com\/doctrine\/dbal\" target=\"_blank\" rel=\"noopener\">Doctrine DBAL<\/a>\uc740 \ub110\ub9ac \uc0ac\uc6a9\ub418\ub294 \ub370\uc774\ud130\ubca0\uc774\uc2a4 \ucd94\uc0c1\ud654 \uacc4\uce35\uc73c\ub85c, PHP \uac1c\ubc1c\uc790\uc5d0\uac8c SQL \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc640 \uc0c1\ud638 \uc791\uc6a9\ud558\uae30 \uc704\ud55c \uc774\uc2dd \uac00\ub2a5\ud55c \uac1d\uccb4 \uc9c0\ud5a5 API\ub97c \uc81c\uacf5\ud558\uba70, PHP \uc5d0\ucf54\uc2dc\uc2a4\ud15c\uc758 \ub2e4\uc591\ud55c \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uacfc \ud504\ub808\uc784\uc6cc\ud06c\ub97c \uc9c0\uc6d0\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p>\uc800\ub294 \ub9e4\uc77c PhpStorm\uc744 \uc0ac\uc6a9\ud558\uc5ec \ub2e4\uc591\ud55c \uad6c\uc131\uc73c\ub85c \ub85c\uceec\uc5d0\uc11c PHPUnit \ud14c\uc2a4\ud2b8\ub97c \uc2e4\ud589\ud558\uace0, \ub2e4\uc591\ud55c \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc640 \uc0c1\ud638 \uc791\uc6a9\ud558\uba70, Docker \ucee8\ud14c\uc774\ub108\ub97c \uad00\ub9ac\ud558\uace0, \uc815\uc801 \ubd84\uc11d\uc744 \uc2e4\ud589\ud569\ub2c8\ub2e4.<\/p>\n<cite><em>\u2014 Sergei Morozov, Doctrine DBAL \uc720\uc9c0 \uad00\ub9ac \ub2f4\ub2f9\uc790<\/em><\/cite><\/blockquote>\n\n\n\n<p>\uc774 \ud504\ub85c\uc81d\ud2b8\ub294 \uc131\uc219 \ub2e8\uacc4\uc5d0 \uc811\uc5b4\ub4e4\uc5b4 \ub300\ubd80\ubd84\uc758 \uc8fc\uc694 \uae30\ub2a5\uc744 \uc81c\uacf5\ud558\uace0 \uc788\uc73c\uba70, \ud604\uc7ac \uc2a4\ud0a4\ub9c8 \uad00\ub9ac\ub97c \uc644\uc804\ud788 \uc7ac\uc791\uc5c5\ud558\uace0, \uc6d0\ub798 \uc2a4\ud0a4\ub9c8\uc758 \ud55c\uacc4\ub97c \ud574\uacb0\ud558\uace0, \uc9c4\ud654\ud558\ub294 SQL \ud45c\uc900\uacfc \ub370\uc774\ud130\ubca0\uc774\uc2a4 \ud50c\ub7ab\ud3fc\uc5d0 \ub300\ud55c \ub354 \ub098\uc740 \uc9c0\uc6d0\uc744 \ubcf4\uc7a5\ud558\ub294 \uc791\uc5c5\uc774 \uc9c4\ud589 \uc911\uc785\ub2c8\ub2e4.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">CodeIgniter<\/h2>\n\n\n\n<p><a href=\"https:\/\/github.com\/codeigniter4\/CodeIgniter4\" target=\"_blank\" rel=\"noopener\">CodeIgniter<\/a>\ub294 \uac04\ud3b8\uc131\uacfc \uac1c\ubc1c\uc790\uc758 \uc790\uc720\ub97c \uc6b0\uc120\ud558\ub294 \uac00\ubcbc\uc6b4 \uace0\uc131\ub2a5 PHP \ud504\ub808\uc784\uc6cc\ud06c\uc785\ub2c8\ub2e4. \uac1c\ubc1c\uc790\uac00 \uc5c4\uaca9\ud55c \uaddc\uce59\uc744 \ub530\ub974\uc9c0 \uc54a\uace0\ub3c4 \uc6d0\ud558\ub294 \uc870\uac74\uc73c\ub85c \uc571\uc744 \uac1c\ubc1c\ud560 \uc218 \uc788\uac8c \ud574\uc8fc\ub294 \uac83\uc774 \ud575\uc2ec \uac1c\ub150\uc774\uba70, \uc774\ub7ec\ud55c \uc810\uc774 \ub9e4\ub825\uc73c\ub85c \uacc4\uc18d \uc804\ub2ec\ub429\ub2c8\ub2e4.<\/p>\n\n\n\n<p>CodeIgniter v4\ub294 \uc774\uc804 \ubc84\uc804\uc758 \ud575\uc2ec \uc6d0\uce59\uc744 \uc720\uc9c0\ud558\uba74\uc11c PHPStan, Psalm, Rector \ub4f1\uc758 \ub3c4\uad6c\uc640\uc758 \ud1b5\ud569 \ubc0f \uacac\uace0\ud55c \ud14c\uc2a4\ud2b8\uc640 \uac19\uc740 \ucd5c\uc2e0 \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uac1c\ubc1c \uad00\ud589\uc744 \ucc44\ud0dd\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p>CodeIgniter v4\uc758 \uc8fc\uc694 \uc7a5\uc810 \uc911 \ud558\ub098\ub294 PHP \ubaa8\ubc94 \uc0ac\ub840\ub97c \ub530\ub978\ub2e4\ub294 \uac83\uc73c\ub85c, \ucd94\uac00 \ud50c\ub7ec\uadf8\uc778\uc774 \ud544\uc694 \uc5c6\uc774 PhpStorm\uacfc \ud568\uaed8 \ubc14\ub85c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. IDE\ub294 CodeIgniter\uc758 \ud328\ud134\uacfc \uaddc\uce59\uc744 \uc989\uc2dc \uc774\ud574\ud558\uace0, \uc2a4\ub9c8\ud2b8\ud55c \ucf54\ub4dc \uc644\uc131 \uae30\ub2a5\uc744 \uc81c\uacf5\ud558\uc5ec \uac1c\ubc1c\uc744 \ub2e8\uc21c\ud654\ud569\ub2c8\ub2e4. \uc774\ub7ec\ud55c \uae30\ubcf8\uc801\uc778 \ud638\ud658\uc131 \ub355\ubd84\uc5d0 \uae30\uc5ec\uc790\ub4e4\uc740 \ub180\ub77c\uc6b8 \uc815\ub3c4\ub85c \uc0dd\uc0b0\uc801\uc778 \uacbd\ud5d8\uc744 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<cite><em>\u2014 Matt Gatner, CodeIgniter \uae30\uc5ec\uc790<\/em><\/cite><\/blockquote>\n\n\n\n<p>\ud300\uc740 \uc131\ub2a5, \ubaa8\ub4c8\uc2dd \uad6c\uc870, \uc6d0\ud65c\ud55c \uac1c\ubc1c\uc790 \uacbd\ud5d8\uc744 \uc911\uc2ec\uc73c\ub85c CI4\ub97c \uacc4\uc18d \ubc1c\uc804\uc2dc\ud0a4\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uace7 \ucd9c\uc2dc\ub420 \ubc84\uc804\uc5d0\uc11c\ub294 \ud504\ub85c\uc81d\ud2b8\uc758 \uc6d0\ub798 \ube44\uc804\uc744 \uc9c0\ud0a4\uba74\uc11c \uc791\uc5c5 \ubc0f \ub300\uae30\uc5f4 \ud328\ud0a4\uc9c0\ub97c \uc548\uc815\ud654\ud558\uace0, \ubaa8\ub4c8\ud615 \ud328\ud0a4\uc9c0 \ub77c\uc774\ube0c\ub7ec\ub9ac\ub97c \ud655\uc7a5\ud558\uace0, \ucd5c\uc2e0 PHP \ubc84\uc804\uacfc\uc758 \ud638\ud658\uc131\uc744 \uac1c\uc120\ud558\ub824\uace0 \ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Joomla!<\/h2>\n\n\n\n<p><a href=\"https:\/\/github.com\/joomla\/joomla-cms\" target=\"_blank\" rel=\"noopener\">Joomla!<\/a> \ub294 \uc804 \uc138\uacc4 \uc790\uc6d0 \ubd09\uc0ac\uc790 \ucee4\ubba4\ub2c8\ud2f0\uac00 \uc9c0\uc6d0\ud558\ub294 \uac15\ub825\ud55c \uc624\ud508 \uc18c\uc2a4 \ucf58\ud150\uce20 \uad00\ub9ac \uc2dc\uc2a4\ud15c\uc785\ub2c8\ub2e4. \ubaa9\ud45c\ub294 \uac1c\uc778, \uc911\uc18c\uae30\uc5c5, \ube44\uc601\ub9ac \ub2e8\uccb4\uac00 \ub2e4\ub978 \uc2dc\uc2a4\ud15c\uc744 \uc0ac\uc6a9\ud558\ub294 \ub370 \ub530\ub974\ub294 \uac00\ud30c\ub978 \ud559\uc2b5 \uace1\uc120 \uc5c6\uc774\ub3c4 \uc628\ub77c\uc778\uc73c\ub85c \ucf58\ud150\uce20\ub97c \uac8c\uc2dc\ud558\uace0 \ud611\uc5c5\ud560 \uc218 \uc788\ub294 \uc720\uc5f0\ud558\uace0 \uc548\uc804\ud55c \ub2e4\uad6d\uc5b4 \ud50c\ub7ab\ud3fc\uc744 \uc81c\uacf5\ud558\ub294 \uac83\uc785\ub2c8\ub2e4.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p>PhpStorm\uc758 \uc815\uc801 \ucf54\ub4dc \ubd84\uc11d\uae30\ub294 \ubb38\uc11c \ube14\ub85d\uc744 \uc815\ub9ac\ud558\uace0 \ud504\ub808\uc784\uc6cc\ud06c\ub97c \ub354 \ud6a8\uacfc\uc801\uc73c\ub85c \uad00\ub9ac\ud558\ub294 \ub370 \ub3c4\uc6c0\uc774 \ub418\uc5c8\uc2b5\ub2c8\ub2e4. PhpStorm\uc740 Joomla\ub97c \uae4a\uc774 \uc774\ud574\ud558\uae30 \ub54c\ubb38\uc5d0 \uac1c\ubc1c\uc774 \uc6d0\ud65c\ud574\uc9d1\ub2c8\ub2e4.<\/p>\n<cite>\u2014 <em>Hannes Papenberg, <em>Joomla \uc720\uc9c0 \uad00\ub9ac \ub2f4\ub2f9\uc790<\/em><\/em><\/cite><\/blockquote>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p>PhpStorm\uc744 \uc0ac\uc6a9\ud558\uba74 \ud30c\uc77c\uc774 \uc5b4\ub5bb\uac8c \uc5f0\uacb0\ub418\uc5b4 \uc788\ub294\uc9c0 \ud655\uc778\ud558\uace0 \uad6c\ubb38 \uc624\ub958\ub97c \uc77c\ucc0d \ubc1c\uacac\ud558\uba70, \uc2e4\uc81c\ub85c \uace0\uac1d\uc5d0\uac8c \ud544\uc694\ud55c \ubb38\uc81c\uc5d0 \uc9d1\uc911\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc800\ub294 \uc77c\uc0c1 \uc5c5\ubb34\uc5d0\uc11c \uadf8 \uac00\uce58\ub97c \uae68\ub2eb\uc9c0 \ubabb\ud558\ub294 \ub2e4\ub978 \uc6f9 \uac1c\ubc1c\uc790\ubcf4\ub2e4 \ud070 \uc774\uc810\uc744 \ub204\ub9ac\uace0 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<cite>\u2014 <em>Adam Melcher, <em>Joomla \uae30\uc5ec\uc790<\/em><\/em><\/cite><\/blockquote>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p>PhpStorm\uc740 Joomla \ud575\uc2ec \uac1c\ubc1c\uc790\uc778 \uc800\uc5d0\uac8c \uc5ec\ub7ec \uba74\uc5d0\uc11c \ub9ce\uc740 \ub3c4\uc6c0\uc744 \uc90d\ub2c8\ub2e4. \uc2a4\ud14c\ud551 \ub514\ubc84\uac70\ub294 \ubc84\uadf8\ub97c \ucd94\uc801\ud558\uace0, \ucf54\ub4dc \ud750\ub984\uc744 \uc774\ud574\ud558\uace0, \uc804\ubc18\uc801\uc73c\ub85c \ub0b4\ubd80\uc5d0\uc11c \ubb34\uc2a8 \uc77c\uc774 \uc77c\uc5b4\ub098\uace0 \uc788\ub294\uc9c0 \uc774\ud574\ud558\ub294 \ub370 \uc720\uc775\ud55c \ub3c4\uc6c0\uc744 \uc8fc\ub294 \ub3c4\uad6c\uc5ec\uc11c \uc800\ub294 \uac70\uc758 \ub9e4\uc77c \uc0ac\uc6a9\ud569\ub2c8\ub2e4. Joomla \ud50c\ub7ec\uadf8\uc778\uc740 Joomla \ucf54\ub4dc \ubca0\uc774\uc2a4\ub97c \uc774\ud574\ud558\uace0 \ucf54\ub4dc \ud0d0\uc0c9\uc744 \ud6e8\uc52c \uc27d\uac8c \ub9cc\ub4e4\uc5b4 \uc0ac\uc6a9 \ud3b8\uc758\uc131\uc744 \ud55c \ub2e8\uacc4 \ub192\uc5ec\uc90d\ub2c8\ub2e4.<\/p>\n<cite>\u2014 <em>Roland Dalmulder, <em>Joomla \uae30\uc5ec\uc790<\/em><\/em><\/cite><\/blockquote>\n\n\n\n<p>2025\ub144 10\uc6d4 14\uc77c\uc5d0 <a href=\"https:\/\/magazine.joomla.org\/all-issues\/july-2024\/joomla-6,-what-s-in-it-for-you\" target=\"_blank\" rel=\"noopener\">Joomla 6<\/a>\uc774 \ucd9c\uc2dc\ub420 \uc608\uc815\uc785\ub2c8\ub2e4. \uc774\ub97c \ud1b5\ud574 \ucf54\ub4dc \ubca0\uc774\uc2a4 \ud604\ub300\ud654\ub97c \ub354\uc6b1 \uac15\ud654\ud558\uace0, SEO \ub3c4\uad6c\ub97c \uac1c\uc120\ud558\uba70, \uae30\ubcf8 \uc81c\uacf5 \uc0c1\ud0dc \uac80\uc0ac\uae30\ub97c \ucd94\uac00\ud558\uc5ec \uc6f9 \uac8c\uc2dc\ub97c \ub354 \ud3ec\uad04\uc801\uc774\uace0 \uc720\uc5f0\ud558\uac8c \ub9cc\ub4e4\uaca0\ub2e4\ub294 Joomla\uc758 \uc0ac\uba85\uc744 \uc774\uc5b4\uac08 \uac83\uc785\ub2c8\ub2e4.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p>\uc774\ub7ec\ud55c \ud504\ub85c\uc81d\ud2b8\ub294 \uae00\ub85c\ubc8c \uc624\ud508 \uc18c\uc2a4 \ud65c\ub3d9\uc758 \uc77c\ubd80\uc77c \ubfd0\uc774\uc9c0\ub9cc, JetBrains\uac00 \uac00\uc7a5 \uc18c\uc911\ud788 \uc5ec\uae30\ub294 \uac00\uce58, \uc989 \ud638\uae30\uc2ec, \ub3c5\ucc3d\uc131, \uac1c\ubc1c\uc790 \ucee4\ubba4\ub2c8\ud2f0\uc5d0 \ub300\ud55c \ubc30\ub824\ub97c \ubc18\uc601\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uac01 \ud504\ub85c\uc81d\ud2b8\ub294 \ub2e4\uc591\ud55c \ucd08\uc810\uc744 \uac00\uc9c0\uace0, \ub192\uc740 \uae30\uc900\uc744 \uc720\uc9c0\ud558\uba74\uc11c \uba85\ud655\ud558\uac8c \uc804\uc9c4\ud558\uae30 \uc704\ud574 \ubaa8\ub450 \uc77c\uad00\ub418\uace0 \uac15\ub825\ud55c \uc6cc\ud06c\ud50c\ub85c\uc5d0 \uc758\uc874\ud569\ub2c8\ub2e4. JetBrains\ub294 \uc774\ub7ec\ud55c \ub178\ub825\uc744 \uc9c0\uc6d0\ud558\ub294 \ub370 \uc790\ubd80\uc2ec\uc744 \ub290\ub08d\ub2c8\ub2e4. \uc624\ud508 \uc18c\uc2a4 \uac1c\ubc1c\uc790\ub77c\uba74 \ubb34\ub8cc \ub610\ub294 \ud560\uc778\ub41c PhpStorm \ub77c\uc774\uc120\uc2a4\ub97c \ubc1b\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2024\/01\/free-and-discounted-licenses-for-phpstorm-who-is-eligible\/\">\uc790\uc138\ud55c \uc635\uc158 \ubcf4\uae30<\/a>\uc5d0\uc11c \uc790\uaca9 \uc5ec\ubd80\ub97c \ud655\uc778\ud558\uc138\uc694.<\/p>\n\n\n\n<p>\ub610\ud55c JetBrains\ub294 <a href=\"https:\/\/lp.jetbrains.com\/phpverse-2025\/\" target=\"_blank\" rel=\"noopener\">PHPverse 2025<\/a>\ub97c \ud1b5\ud574 PHP \ucee4\ubba4\ub2c8\ud2f0\uc758 \uc5f4\uc815\uacfc \ubc1c\uc804\uc744 \uae30\ub150\ud560 \uc218 \uc788\ub294 \uc790\ub9ac\ub97c \ub9c8\ub828\ud569\ub2c8\ub2e4. \uc774 \ubb34\ub8cc \uc628\ub77c\uc778 \uc774\ubca4\ud2b8\ub294 2025\ub144 6\uc6d4 17\uc77c\uc5d0 \uac1c\ucd5c\ub418\uba70, PHP \ubd84\uc57c\uc5d0\uc11c \uac00\uc7a5 \uc601\ud5a5\ub825 \uc788\ub294 \uc778\uc0ac\ub4e4\uc774 \ubaa8\uc5ec PHP \uc5b8\uc5b4\uc758 \ubc1c\uc804\uacfc \ubbf8\ub798\uc5d0 \ub300\ud55c \uc778\uc0ac\uc774\ud2b8\ub97c \uacf5\uc720\ud560 \uc608\uc815\uc785\ub2c8\ub2e4. \uc601\uac10\uc744 \uc8fc\ub294 \uac15\uc5f0, \ud1a0\ub860 \ubc0f \uc9c8\uc758\uc751\ub2f5\uc5d0 \ucc38\uc5ec\ud558\uace0 PHP \uae30\ub150 \ud2b9\ubcc4 \uc0c1\ud488\uc744 \ubc1b\uc744 \uc218 \uc788\ub294 \uae30\ud68c\ub3c4 \uc7a1\uc73c\uc138\uc694.<\/p>\n\n\n    <div class=\"buttons\">\n        <div class=\"buttons__row\">\n                                                <a href=\"https:\/\/lp.jetbrains.com\/phpverse-2025\/\" class=\"btn\" target=\"\" rel=\"noopener\">Sign Up for Free<\/a>\n                                                    <\/div>\n    <\/div>\n\n\n\n\n\n\n\n<p><em>\uac8c\uc2dc\ubb3c \uc6d0\ubb38 \uc791\uc131\uc790<\/em><\/p>\n\n\n    <div class=\"about-author \">\n        <div class=\"about-author__box\">\n            <div class=\"row\">\n                <div class=\"about-author__box-img\">\n                    <img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/05\/av_IMG_5504.jpeg\" width=\"200\" height=\"200\" alt=\"Lena Morozova\" loading=\"lazy\"  class=\"avatar avatar-200 wp-user-avatar wp-user-avatar-200 photo avatar-default\">\n                <\/div>\n                <div class=\"about-author__box-text\">\n                                            <h4>Lena Morozova<\/h4>\n                                                        <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n\n\n","protected":false},"author":1191,"featured_media":575572,"comment_status":"closed","ping_status":"closed","template":"","categories":[942],"tags":[104,560,8772,8777],"cross-post-tag":[6637],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/blog\/575008"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/users\/1191"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/comments?post=575008"}],"version-history":[{"count":4,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/blog\/575008\/revisions"}],"predecessor-version":[{"id":575650,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/blog\/575008\/revisions\/575650"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/media\/575572"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/media?parent=575008"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/categories?post=575008"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/tags?post=575008"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/cross-post-tag?post=575008"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}