πŸ”§ Как Π΄Π΅Π±Π°ΠΆΠΈΡ‚ΡŒ PHP Π² VS Code: Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠΈ инструкция для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ PHP Π² VS Code, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ нСсколько Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ. Π’ΠΎΡ‚ шаги:

  1. УстановитС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ PHP Debug, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π²Π°ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ PHP:
  2. code --install-extension felixfbecker.php-debug
  3. УстановитС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Xdebug, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ являСтся Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ PHP для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ:
  4. code --install-extension xdebug.xdebug
  5. НастройтС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ PHP Π² Ρ„Π°ΠΉΠ»Π΅ launch.json. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ:
  6. {
        "version": "0.2.0",
        "configurations": [
            {
                "name": "Listen for Xdebug",
                "type": "php",
                "request": "launch",
                "port": 9000
            }
        ]
    }
  7. УстановитС Ρ‚ΠΎΡ‡ΠΊΡƒ останова, Π΄ΠΎΠ±Π°Π²ΠΈΠ² debugger Π² вашСм ΠΊΠΎΠ΄Π΅ PHP:
  8. $x = 5;
    $y = 10;
    $sum = $x + $y;
    debugger; // Π’ΠΎΡ‡ΠΊΠ° останова
    echo $sum;
  9. Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ, Ρ‰Π΅Π»ΠΊΠ½ΡƒΠ² Π½Π° Π·Π½Π°Ρ‡ΠΎΠΊ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ VS Code ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π³ΠΎΡ€ΡΡ‡ΡƒΡŽ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ F5. ПослС этого ваш ΠΊΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ построчно, ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡŒ Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ΅ останова.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ свой PHP-ΠΊΠΎΠ΄ Π² VS Code, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ PHP Debug ΠΈ настройки Xdebug.

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как Π΄Π΅Π±Π°ΠΆΠΈΡ‚ΡŒ PHP Π² VS Code

Π”Π΅Π±Π°Π³Π³ΠΈΠ½Π³ (ΠΎΡ‚Π»Π°Π΄ΠΊΠ°) являСтся Π½Π΅ΠΎΡ‚ΡŠΠ΅ΠΌΠ»Π΅ΠΌΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ процСсса Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Π½Π° PHP. Он позволяСт ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ошибки ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π² ΠΊΠΎΠ΄Π΅. ИспользованиС ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… инструмСнтов для Π΄Π΅Π±Π°Π³Π³ΠΈΠ½Π³Π° ΠΌΠΎΠΆΠ΅Ρ‚ сущСствСнно ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ этот процСсс.

1. Установка ΠΈ настройка PHP Debug Extension

ΠŸΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Π΄Π΅Π±Π°Π³Π³ΠΈΠ½Π³Π° Π²Π°ΠΌ понадобится ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ PHP Debug для Visual Studio Code. Π‘Π»Π΅Π΄ΡƒΠΉΡ‚Π΅ этим шагам:

  1. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Visual Studio Code
  2. ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Extensions (Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ) Π² Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ
  3. Π’ поисковой строкС Π²Π²Π΅Π΄ΠΈΡ‚Π΅ "PHP Debug" ΠΈ установитС ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅
  4. ПослС установки Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ, ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ Visual Studio Code

2. Настройка Ρ„Π°ΠΉΠ»Π° launch.json

ПослС установки Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ PHP Debug, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» launch.json для указания ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π΄Π΅Π±Π°Π³Π³ΠΈΠ½Π³Π°. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚Π°ΠΊΠΎΠΉ настройки:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Launch",
            "type": "php",
            "request": "launch",
            "program": "${file}",
            "cwd": "${fileDirname}",
            "port": 9000
        }
    ]
}

3. Установка Xdebug

Π§Ρ‚ΠΎΠ±Ρ‹ PHP Debug ΠΌΠΎΠ³ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с ΠΊΠΎΠ΄ΠΎΠΌ PHP, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Xdebug Π½Π° вашСм сСрвСрС. Π‘Π»Π΅Π΄ΡƒΠΉΡ‚Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Xdebug для ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… инструкций для вашСй ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы ΠΈ сСрвСра.

4. Установка Ρ‚ΠΎΡ‡Π΅ΠΊ останова (breakpoints)

Π’ΠΎΡ‡ΠΊΠΈ останова ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Π°ΠΌ ΠΏΡ€ΠΈΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… мСстах для Π°Π½Π°Π»ΠΈΠ·Π° Π΅Π³ΠΎ состояния. Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ‚ΠΎΡ‡ΠΊΡƒ останова, просто Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π»Π΅Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ рядом с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ строки, Π³Π΄Π΅ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ‚ΠΎΡ‡ΠΊΡƒ останова.

5. Запуск Π΄Π΅Π±Π°Π³Π³ΠΈΠ½Π³Π°

ПослС настройки launch.json ΠΈ установки Ρ‚ΠΎΡ‡Π΅ΠΊ останова, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π΄Π΅Π±Π°Π³Π³ΠΈΠ½Π³, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ Π°Π½Π°Π»ΠΈΠ· ΠΊΠΎΠ΄Π° PHP Π² VS Code. Π‘Π»Π΅Π΄ΡƒΠΉΡ‚Π΅ этим шагам:

  1. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ» PHP, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΡ‚Π»Π°Π΄ΠΈΡ‚ΡŒ
  2. Π©Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ Π½Π° пустом пространствС ΠΊΠΎΠ΄Π° ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΏΡƒΠ½ΠΊΡ‚ "ΠžΡ‚Π»Π°Π΄ΠΊΠ° Ρ„Π°ΠΉΠ»Π°" Π² контСкстном мСню
  3. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ "Launch" (ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΡƒΡŽ, Ссли Π²Ρ‹ Π΅Π΅ настроили ΠΏΠΎ-Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ) Π² Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅ΠΌ спискС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ Π΄Π΅Π±Π°Π³Π³ΠΈΠ½Π³Π°
  4. НаТмитС ΠΊΠ½ΠΎΠΏΠΊΡƒ "Π‘Ρ‚Π°Ρ€Ρ‚" ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ клавиш F5, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π΄Π΅Π±Π°Π³Π³ΠΈΠ½Π³

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ваш ΠΊΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ пошагово, ΠΈ Π²Ρ‹ смоТСтС ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ ΠΈ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ошибки.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄Π° ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹Ρ… инструкций

1. ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ:

$x = 10;
var_dump($x);

2. Π¦ΠΈΠΊΠ» с использованиСм Ρ‚ΠΎΡ‡ΠΊΠΈ останова:

for ($i = 0; $i <= 5; $i++) {
    // Установка Ρ‚ΠΎΡ‡ΠΊΠΈ останова Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ строкС
    echo $i;
}

3. ΠžΡ‚Π»Π°Π΄ΠΊΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

function sum($a, $b) {
    $result = $a + $b;
    return $result;
}

$x = 5;
$y = 3;

// Установка Ρ‚ΠΎΡ‡ΠΊΠΈ останова Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ строкС
$sum = sum($x, $y);
echo $sum;

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этих инструмСнтов ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΊΠΎΠ΄Π° Π²Ρ‹ смоТСтС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Π΄Π΅Π±Π°Π³Π³ΠΈΡ‚ΡŒ свой PHP ΠΊΠΎΠ΄ Π² срСдС VS Code.

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π”Π΅Π±Π°Π³Π³ΠΈΠ½Π³ PHP ΠΊΠΎΠ΄Π° Π² VS Code ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ слоТным процСссом Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд, Π½ΠΎ с ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ настройкой ΠΈ использованиСм инструмСнтов ΠΎΠ½ становится Π±ΠΎΠ»Π΅Π΅ простым ΠΈ эффСктивным. УстановитС ΠΈ настройтС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ PHP Debug, установитС Xdebug Π½Π° вашСм сСрвСрС, настройтС Ρ„Π°ΠΉΠ» launch.json ΠΈ использованиС Ρ‚ΠΎΡ‡Π΅ΠΊ останова, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ сСбС процСсс ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. ΠŸΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΊΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эти инструмСнты Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅. Π£Π΄Π°Ρ‡ΠΈ Π² Π΄Π΅Π±Π°Π³Π³ΠΈΠ½Π³Π΅ вашСго PHP ΠΊΠΎΠ΄Π°!

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

PHP Debug Π² VS Code

Настройка xdebug для visual code Π² связкС с openserver (Π·Π° 4 ΠΌΠΈΠ½)

#6 ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° языкС PHP Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ VS Code, PHP Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ для VS Code

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

πŸ”§ Как ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ Π² PyCharm: руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

πŸ” Как Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ измСнСния Π² Git stash: Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ простыС способы

πŸ”§ Как Π΄Π΅Π±Π°ΠΆΠΈΡ‚ΡŒ PHP Π² VS Code: Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠΈ инструкция для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

πŸ”— Как ΠΌΠ΅Ρ€Π΄ΠΆΠΈΡ‚ΡŒ Π²Π΅Ρ‚ΠΊΠΈ Π² git: ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ совСты ΠΈ инструкции

⚑ Как ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ git add послС ΠΊΠΎΠΌΠΌΠΈΡ‚Π°? Π›Π΅Π³ΠΊΠΈΠΉ ΠΈ понятный способ!