К этому посту больше нельзя оставлять новые комментарии
trialex3 03.09.2017 в 21:40

У меня в проге после настройки пишет Waiting for incoming connection with ide key 'PHPSTORM'.
Как можно исправить?
UPD. Нашел в интернете решение.

ivashkevich 10.09.2017 в 14:24

Это разве нужно исправлять? Всё же вроде правильно.

Maxim 21.05.2018 в 11:54

О, а помогите мне тоже найти. Сам не справился.

Tays 21.10.2017 в 00:23

Здравствуйте
У меня XAMPP и NetBeans. Как настроить Xdebug?

ivashkevich 21.10.2017 в 06:11

А почему не PHPStorm и OpenServer, как я советовал?
Если принимаете решение использовать другие инструменты, значит вы должны понимать, ради чего это делаете. И беретесь самостоятельно разбираться как это делать по-другому. Мне лень, да и незачем копаться в том, с чем я не работаю. Это бы заняло очень много времени и не принесло пользы. Так что, придется вам погуглить самому =)

jetsaus 13.09.2018 в 06:51

В каталоге установки XAMPP ищешь файл php\php.ini и правишь его в соответствии с уроком. Перезапусаешь apache.В NetBeans не знаю, но думаю тоже не сложно, пользую Шторм.

Tays 21.10.2017 в 18:03

У меня уже была установлена эта сборка. Буду гуглить дальше.

serb2017 11.11.2017 в 16:28

По теме урока всё установилось и работает нормально. За исключением F8 и F9.
F9 вызывает меню Пуск,
F8 вызывает меню для подключения к проектору.
F7 работает адекватно.
Управлять можно без клавиш, иконками в PHPStotm.
Пока не разобрался как устранить проблему. В Windous 7 + SP1 (в моём случае) эти клавиши выдают аналогичный описанному результат.

ivashkevich 12.11.2017 в 10:10

Значит у вас в BIOS выставлена настройка горячих клавиш. У вас есть на клавиатуре кнопка Fn? Как правило она слева внизу.

serb2017 13.11.2017 в 14:20

С помощью отладчика наконец разобрался с рекурсивной функцией(РФ).
1.При самовызове РФ N раз, создаётся стек с N уровнями.
2.Возвращение РФ (в место первого вызова)происходит за N шагов по стеку в обратном порядке.
3."Сколько шагов вперёд, столько шагов назад"
Для иллюстрации:

<?php
function natural(int $n)
{

    if ($n == 0) {
        echo '<br>';
        return;
    }
    $n--;
    echo '<br> создание уровня стека  ' . $n;
    natural($n);
    echo '<br>' . 'возврат из уровня стека  ', $n, '  на предыдущий';
}

$n = 3;
natural($n);

На экране:
создание уровня стека 2
создание уровня стека 1
создание уровня стека 0

возврат из уровня стека 0 на предыдущий
возврат из уровня стека 1 на предыдущий
возврат из уровня стека 2 на предыдущий

ivashkevich 16.11.2017 в 19:34

Мои поздравления =)

Andreo 26.12.2017 в 13:54

Рекурсивная функция мне напомнила сюжет фильма "Начало". Все как там...

ivashkevich 26.12.2017 в 14:42

:D не смотрел, кстати. Надо будет глянуть на выходных.

artemjeka 03.09.2018 в 13:46

Согласен, мне тоже...

Lungren 28.12.2017 в 19:51

Установил chrome и расширение, но жучка на консоли браузера не вижу!

Lungren 28.12.2017 в 19:53

А, вижу, но он в яндексовском браузере...

ivashkevich 28.12.2017 в 20:19

Кек, то есть установили в хромовском сторе, а появился он в Яндекс.Браузере?

Lungren 03.01.2018 в 20:10

Кекаете?

ivashkevich 04.01.2018 в 14:30

А-то! :)

Lungren 04.01.2018 в 14:37

В чём дело?!

Lungren 29.12.2017 в 11:40

Да, и модификация PHPstorm уже другая...

ivashkevich 29.12.2017 в 12:30

Что такое модификация? Версия?

Lungren 29.12.2017 в 12:39

Да

ivashkevich 29.12.2017 в 12:42

В плане отладки там всё то же самое. Разве нет? Я вот только вчера себе поставил, и никаких изменений не заметил.

Lungren 29.12.2017 в 13:58

Согласен вполне

ivashkevich 29.12.2017 в 14:03

Ок. Кстати, на комментарии лучше отвечать, нажимая на "Ответить" под конкретным комментом.

Lungren 30.12.2017 в 16:35

Какая у Вас версия Сторма?

ivashkevich 01.01.2018 в 21:49

2017.3.2

1nSide 31.03.2018 в 12:29

Сделал все как в видео уроке но после того как обновляю страничку в браузере с включенным дебагером ничего в пхп шторме не происходит, дебагер ничего не пишет

ivashkevich 31.03.2018 в 13:41

Напиши в ВК, что-то всё равно не так :)

grishandze 15.05.2018 в 14:46

Здравствуйте. Сделал все по инструкции, но XDebug не работает.
Во вкладке "Frames" пишет: "Frames are not aviable",
В "Variables": "Waiting for incoming connection with ide key 'PHPSTORM'".
Ничего дальше не происходит. Не могу решить. Помогите пожалуйста. Заранее спасибо.

З.Ы. Вместо Open Server использую WampServer, но я так понял, что отличаются они друг от друга мало.

ivashkevich 15.05.2018 в 17:23

Отличаются, скорее всего там вообще нет XDebug. Прошу меня понять и простить, но у меня нет времени разбираться со всеми серверами на свете, если хотите чтобы работало - сделайте как в уроке, пожалуйста :)

grishandze 15.05.2018 в 19:59

Разобрался. Огромное спасибо за ваши курсы. Все максимально доходчиво объяснено :)

[email protected] 10.07.2018 в 15:52

А почему после первого выполнения 7 строки кода, сразу не выполняется 8?

ivashkevich 10.07.2018 в 16:34

Потому что снова начинает выполняться функция numbers(), а на первой её строке стоит breakpoint, и отладчик на нём останавливается.

[email protected] 24.07.2018 в 21:43

по ходу я совсем тупая ) все настроила, все работает, но происходящий процесс ничего не прояснил. я вижу, что переменная меняется, становясь меньше на 1. но сложить это хоть в какой-то понятный пошаговый процесс в своей голове я не могу. т.е. я не могу представить как работает код, что там происходит на его задворках. и возникает вопрос, стоит ли мне продолжать или я безнадежна?

ivashkevich 25.07.2018 в 18:33

Паниковать не стоит, рекурсия не всем даётся с первого раза. Можете пока вообще её пропустить - это не помешает дальнейшему прохождению курса. Но я бы советовал Вам с ней всё же разобраться - погуглите другие уроки на тему рекурсии, возможно найдёте какое-нибудь более наглядное пособие. Но, опять же, повторюсь - не обязательно. Не поймёте - чёрт с ней, проходите дальше ;)

RusTaylor 16.08.2018 в 16:48

У меня в консоли пишет следующее:
Waiting for incoming connection with ide key 'PHPSTORM'
Сделал так же как и написано.

ivashkevich 16.08.2018 в 21:57

Это хорошо, значит отладчик ждёт входящего соединения. Посмотрите видео ещё (в начале урока) - там вообще всё как есть показано.

RusTaylor 19.08.2018 в 12:10

Спасибо, всё работает)
Спасибо за уроки)

ivashkevich 20.08.2018 в 23:14

Отлично! Всегда рад помочь =)

AxLT 30.08.2018 в 16:44

Есть проблема по запуску XDebug. Настроил все верно (перепроверял). но при перезагрузке странице в браузере она не подвисает в загрузке, а просто выдает конечный результат как и до установки брейкпойнта. в PHPStorm вижу следующее:
описание картинки

ivashkevich 01.09.2018 в 13:31

Все норм, он ждет соединения. Настраивайте плагин в хроме и перезагружайте страницу. Все как на видео сделайте.

AxLT 02.09.2018 в 00:34

Да, уже заработало, спасибо

artemjeka 03.09.2018 в 14:43

У меня linux ubuntu и сервер xampp(lampp) и PhpStorm.
Может у кого такая-же конфигурация будет полезна
инструкция по установке xdebug на PhpStorm + ubuntu + lampp.

Инструкция:

1. Перейти:
 https://xdebug.org/wizard.php
2. В свой index.php на локальном домене вставить:
 phpinfo(); 
 (Не чего кроме phpinfo(); в файле не должно быть прописано!)
3. ctrl+u копируем код страницы.
 И вставляем в окошко на странице https://xdebug.org/wizard.php 
 и нажимаем кнопку снизу.
4. Инструкция которую выдала страница: https://xdebug.org/wizard.php
 (просто вставка кода который подсвечен, он может быть уникален у вас в некоторых местах)
5. Кроме последней строчки в инструкции
 (примерно такого вида zend_extension = /opt/lampp/lib/php/extensions/no-debug-non-zts-20170718/xdebug.so) 
 нужно еще добавить за ней же:
 xdebug.remote_enable = 1
 xdebug.remote_port = 9000
 xdebug.remote_handler = "dbgp"
 xdebug.remote_connect_back = 1
 xdebug.idekey = "PHPSTORM"
6. Как настроить PhpStrom и Chrome здесь: https://php.zone/php-training-course/11
7. Перезапустить lampp.
artemjeka 03.09.2018 в 15:30

Спасибо огромное какой материал качественный!
Кажется теперь я ее понял:
Сначала идет проработка вызова функции в самой себе.
А только потом проработка всех выводов echo $arg, все равно какая-то пелена, что за правила отработки echo и функции внутри функции? Почему echo потом отрабатывает в обратном порядке ведь числа поступали в порядке 3 2 1 0, а он их после отработки выводит 0 1 2 3, интересно.

function numberBy0ToArg_v2($arg)
{
    if ($arg >= 0) {
        $arg - numberBy0ToArg_v2($arg - 1) . '<br />'; 
        echo $arg; 
    }
}
numberBy0ToArg_v2(3);
ivashkevich 05.09.2018 в 23:22

Ответил в комментах к прошлому уроку

jetsaus 13.09.2018 в 06:52

Пасиб автору!
Классный и ёмкий урок для новичков.

ivashkevich 22.09.2018 в 10:19

На здоровье)

antoxa 23.10.2018 в 15:59

Спасибо, очень полезно!

ivashkevich 23.10.2018 в 23:19

Рад быть полезным)

Kirill.K 26.10.2018 в 17:15

Когда проходил данный урок упёрся, как и некоторые комментаторы, в ошибку(или не ошибку) "Waiting for incoming connection with ide key 'PHPSTORM'.", махнул рукой и пошёл дальше.
Уже сижу делаю "большую Домашку" в конце уровня "Пишем Блог" и начал плавать в объёме кода, ну, думаю, тут то Дебагер мне поможет, вернулся, проломал голову, но не тут то было. Неумолимое ВэйтинФо. Исходя из комментов пришёл к выводу, что это проблема на стороне браузера, опробовал кроме Хрома Фаерфокс, установив в него аналогичное расширение же. А воз и ныне там(

ivashkevich 26.10.2018 в 21:58

С чего вы взяли, что это ошибка? Вам IDE пишет о том, что всё ок и она ждёт входящего соединения. Просто идите дальше по уроку.

Kirill.K 27.10.2018 в 20:15

Ну это понятно, но не понятно почему соединения не происходит. Все пункты урока выполнены: PHPStorm, как мы видим, настроен, Дебаг для браузера установлен, Айдикей настроен, сэйв нажато, дэбаг в панели запущен, брэйкпоинты выставлены, страница обновлена всеми возможными способами, но просто грузится до конца, отклика в IDE никакого. Понятно, что с вероятностью 99% я где то что то упустил, не понятно - что именно)

ivashkevich 27.10.2018 в 20:19

А xdebug на сервере точно работает? Выведите phpinfo(). Если всё ок, то там будет информация об xdebug.

ivashkevich 27.10.2018 в 22:07

Напиши в личку в телегу

Air-up91 07.11.2018 в 11:27

MacOS не поддерживает openServer, поэтому не получается по интсрукции прописать xDebag, я работаю в XAMPP, поэтому немного по другому все

ivashkevich 08.11.2018 в 10:37

Ну, там надо руками расширение XDebug поставить.

Luganskiy 31.01.2019 в 15:52

в правом нижнем углу у меня нет вкладки "Watches", как ее включить?

ivashkevich 01.02.2019 в 23:59

Привет. Гуглил уже?

ashfedor 27.02.2019 в 20:30

Опенсервер на php 7.2 debug отказывается работать Перехожу на 7,0 и все норм.

ivashkevich 02.03.2019 в 16:47

На 7.1 попробуй

ashfedor 03.03.2019 в 16:22

На 7,1 то же самое. Проверил в этих версиях в php нет php_xdebug.dll скачал на оф. сайте нужные версии , поставил и все нормально заработало.

ivashkevich 03.03.2019 в 21:39

Красава)

Blook 09.03.2019 в 23:25

Всем привет!
Столкнулся с проблемой The script 'W:\domains\localhost\phpzone - debug.php' is outside the project. Кто-нибудь знает как ее решить? Читал в интернете, говорят, что надо сделать путь не на файл, а на папку с файлом, но у меня ничего не получилось(
И так всё работает, но хотелось бы избавиться от этой надписи

ivashkevich 10.03.2019 в 11:12

Открой проект с диска W. Написано, что этот файл вне проекта. Из-за того что он открыт по другому пути (с диска C или еще откуда-то).

[email protected] 12.04.2019 в 13:45

Здравствуйте!
Сделал все как вы делали, но при нажатии на зеленую таракашку в PHPstorm'e пишет Error running 'Xdebug': Port 9000 is busy,с чем это связано?

ivashkevich 12.04.2019 в 13:49

Посмотрите, какая программа занимает 9000 порт в вашей системе. Погуглите как

[email protected] 12.04.2019 в 18:18

Этот порт зарезервирован у меня в openserver'e (настройки -> сервер ->php), может быть такое? могу ли я поменять там?

ivashkevich 13.04.2019 в 00:36

Напиши в телеге или в вк

[email protected] 04.05.2019 в 12:31

[Xdebug]
;zend_extension="%sprogdir%/modules/php/%phpdriver%/ext/php_xdebug.dll"
;xdebug.default_enable = 1
xdebug.auto_trace = 0
xdebug.collect_includes = 1
;xdebug.collect_params = 4
;xdebug.collect_return = 1
;xdebug.collect_assignments = 1
;xdebug.collect_vars = 1
xdebug.dump.REQUEST = *
xdebug.dump.SESSION = *
xdebug.dump.SERVER = REMOTE_ADDR,REQUEST_METHOD
;xdebug.dump.COOKIE =
;xdebug.dump.FILES =
;xdebug.dump.GET =
;xdebug.dump.POST =
xdebug.dump_globals = 1
xdebug.dump_once = 1
xdebug.dump_undefined = 1
xdebug.extended_info = 1
;xdebug.file_link_format = ""
;xdebug.idekey = ""
;xdebug.manual_url = "http://www.php.net"
xdebug.max_nesting_level = 256
xdebug.overload_var_dump = 1
;xdebug.profiler_append = 1
xdebug.profiler_enable = 0
xdebug.profiler_enable_trigger = 0
xdebug.profiler_output_dir="%sprogdir%/userdata/temp/xdebug/"
xdebug.profiler_output_name = "cachegrind.out.%H%R"
;xdebug.remote_autostart = 0
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
;xdebug.remote_host = "localhost"
;xdebug.remote_log = "none"
;xdebug.remote_mode = "req"
xdebug.remote_port = 9000
;xdebug.scream = 1
;xdebug.show_exception_trace = 0
;xdebug.show_local_vars = 1
;xdebug.show_mem_delta = 1
;xdebug.trace_format = 1
;xdebug.trace_options = 1
xdebug.trace_output_dir = "%sprogdir%/userdata/temp/xdebug/"
;xdebug.trace_output_name = "trace.%H%R"
xdebug.var_display_max_children = 256
;xdebug.var_display_max_data = 1024
xdebug.var_display_max_depth = 16
;xdebug.remote_cookie_expire_time = 3600

```у меня не так как у тебя в уроке тут нет нескольких строк которые нужно раскомментировать что мне делать??
Bizzzon 30.06.2019 в 22:47

Всё окей, установил и разобрался. Единственный вопрос - когда и как нужно расставлять брейкпоинты?

ivashkevich 01.07.2019 в 03:44

Всегда, когда хочешь увидеть текущее выполнение программы.

Reechniy 01.07.2019 в 13:26

У меня почему-то не отображается окошко Watches. и что-то ни как не могу понять в чем проблема...

ivashkevich 02.07.2019 в 16:31

Его надо включить

Reechniy 02.07.2019 в 16:38

где, я реально туплю и не могу найти галочку которую нужно поставить, что бы он включился

UtillitE 24.06.2020 в 18:33

Найдите окошко Variables, там в левом нижнем углу значёк >>. Нажимаете на него, появляется символ очки, нажимаете и появляется окошко часы.

ivashkevich 03.07.2019 в 06:01

Учись гуглить. Первая ссылка

iluha22 05.08.2019 в 10:03

Почему данный код:

function numbers(int $x) {
    if ($x == 0) {
        echo $x;
        return;
    }
    numbers($x - 1);
    echo ', ' . $x;
}

numbers(3);

выводит значения с нуля, а не с конца '3'?

Строка '$x-1' работает же на уменьшение от большего к меньшему?

iluha22 06.08.2019 в 08:28

Всем спасибо за участие, ответ был получен в чате.
Затем почитав еще несколько статеек про рекурсию и опробовав примеры понял эту фишку.

Рекурсия в PHP выполняя проход по циклу собирает результаты в стек, как стопка книг, заполняя его снизу вверх. А затем, когда граничное условие выполнено, начинает возвращать результат, но теперь уже берет значения с конца, т.е. с верхней части стопки книг (стека).
Получается, что заполнение идет 5, 4, 3, 2, 1, 0, а выборка идет в обратном порядке.

ivashkevich 06.08.2019 в 20:03

Красава!

Clawson 27.08.2019 в 15:03

Ыыыыыых! Вот полезная штука! А то все в уме, да в уме... Спасибо

ivashkevich 28.08.2019 в 05:56

Пожалуйста)

AleksandrNenashev 03.09.2019 в 00:10

у меня не отображается Watches

AleksandrNenashev 03.09.2019 в 00:15

нашел Watches находится во вкладке variables нужно только нажать на плюс

ivashkevich 03.09.2019 в 04:49

Молодец)

Floppy 17.09.2019 в 09:19

php 7.2, phpstorm 2019.2
во втором примере не входит по f7 в функцию getSum, приходится использовать Force Step Into (Alt + Shift + F7) странное поведение.

ivashkevich 18.09.2019 в 17:40

А если fn+F7?

Floppy 18.09.2019 в 19:42

На стационарном нет Fn

ivashkevich 18.09.2019 в 20:34

Если нет, то можно поискать в биосе эту настройку. Ну или просто в шторме зайти и переопределить хоткеи для этого действия, нажав на своей клавиатуре f7, и посмотреть какой хоткей в итоге подставится. Дебажить мышкой - не выход.

VladKrakhmalev 19.09.2019 в 08:33

Сделал всё как описано в уроке, но возникла проблема. Не могу включить дебаг в PhpStorm, так как возникает вот такая ошибка: Error running 'index.php': Interpreter is not specified or invalid. Press ''Fix'' to edit your project configuration.
p.s. Спасибо за то, что вы делаете!

ivashkevich 19.09.2019 в 09:13

Напиши в личку ВКонтакте или телеге

vtolstov 24.09.2019 в 11:45

Прошу помощи, никак не пойму. В общем брэйкпоинт срабатывает, в браузере загрузка подвисает, но PHPStorm никак не хочет показывать что там в переменных на текущий момент.

ivashkevich 24.09.2019 в 20:17

Напиши в личку ВКонтакте или телеге

sar16520 14.10.2019 в 07:02

В чем может быть проблема в Xdebug? У меня стоит SublimeText 3, вроде и страница долго грузит, и стрелочка появляется, но в окне отладки вообще пустота...

ivashkevich 14.10.2019 в 08:37

Я предупреждал, выбираете другие инструменты - разбираетесь сами.

babur 12.11.2019 в 09:19

Здрасьте! в чем проблема Waiting for incoming connection with ide key 'PHPSTORM'? сделал как на видео. и еще openserver у меня новая версия.

ivashkevich 12.11.2019 в 19:43

Ну всё правильно. Пишет что ожидает входящее соединение. У меня в видео так же пишет.

babur 14.11.2019 в 12:14

Видео пересмотрел у вас там такого не вышел как "Waiting for incoming connection with ide key 'PHPSTORM'".
Думаете что я в стороне гугла нечего не установил?! сделал как на видео.
Может мне стоит скачать программы по старой версии?

В данном моменте стоит openserver
Apache_2.4-php_7.0-7.1-x64
PHP_7.3-x64
Mysql-5.6

ivashkevich 14.11.2019 в 13:20

Напиши в личку в телеге или в вк

[email protected] 07.04.2020 в 20:12

решили проблему? если да, то какое решение? у меня та же проблема!

ivashkevich 08.04.2020 в 07:53

Конечно решили) Пишите в чат в телеграме. Но вообще ошибка всегда в том, что какую-то деталь делают не как на видео.

eNergy 11.01.2020 в 08:03

Большое спасибо за урок. Очень классный инструмент, облегчает дорогу новичкам.

ivashkevich 11.01.2020 в 11:03

Получилось настроить?

eNergy 12.01.2020 в 00:32

Все получилось. В вашей работе часто используете данный инструмент?

ivashkevich 12.01.2020 в 15:34

Каждый день

serjioG 24.02.2020 в 21:33

Всё проделал! Понял более-менее рекурсию) Настроил и в хроме и в мозиле! Все работает!

<?php
function getValue ($x)
{
    var_dump($x);
    if ($x == 0) {
        echo $x;
        return ;
    }
    getValue($x - 1);
    echo  ',' .$x;

}
getValue(7);

По рекурсии переменная получает 7 и делает столько же шагов назад.
На экране:
int(7) int(6) int(5) int(4) int(3) int(2) int(1) int(0) 0,1,2,3,4,5,6,7
var_dump добавил для наглядности просто, чтобы понять лучше что происходит:) Спасибо Артем!

ivashkevich 25.02.2020 в 07:35

Отлично. Не забывай указывать типы аргументов у функций!

ashfedor 12.03.2020 в 18:40

Привет! Что то я себе мозг сломал уже на два дня!))
Когда проходил эти настройки просто посмотрел что что то отображается и пошел дальше по урокам. Теперь когда пришла пора применять на практике, дебаг мне показывает только глобальные массивы. Переменных не хочет показывать категорически. Я и на других версиях PHP пробовал.
описание картинки

ivashkevich 14.03.2020 в 20:18

Судя по скриншоту, сейчас он выполняется на второй строчке index.php, и еще попросту не добрался до объявления переменных. Нажимай F8

ashfedor 15.03.2020 в 11:52

Спасибо за ответ , но это я тупонул и не тот скрин прицепил. Вобщем проблему решил обновлением Phpstorm Сначала попробовал настроить дебаг в других редакторах, все получилось, потом обновил Phpstorm до версии 2019 года и все заработало.

ivashkevich 15.03.2020 в 11:53

Ну норм)

rewsteer 05.04.2020 в 18:28

Я всё делал правильно, но когда я нажимаю на значок жучка в хроме и перезагружаю страницу, ничего не происходит.
Вот такие вот у меня настройки в обоих php.ini

zend_extension = /usr/lib/php/20190902/xdebug.so
xdebug.remote_port=9000
xdebug.remote_autostart=on
xdebug.remote_enable=on
xdebug.remote_handler = "dbgp"
xdebug.remote_connect_back = 1
xdebug.idekey = "PHPSTORM"

У меня стоит ubuntu 18.04 и конечно-же нет openServera, стоит обычный lamp, в остальном настройки такие-же, как и у автора. Я так понимаю: для того, чтобы начать дебагинг файла ndex.php который я создал в папке index, я должен открыть в хроме http://localhost/index/, потом нажать на значёк жучка и обновить страницу. но после этого ничего не происходит
Кстати я не понимаю, почему у автора адрес проекта - это http://myproject.loc/, ведь у него по-идеи до папки myproject.loc должен быть адрес сервера(localhost или 127.0.0.1)
Я также пытался обновлять страницу http://localhost/, но в любом случае ничего не происходит

ivashkevich 06.04.2020 в 07:26

Ну а в phpinfo выводится инфа о том, что xdebug работает?

Developer 10.04.2020 в 19:46

Классный урок! Теперь многое понятно! Плюс почитал комментарии чтобы понять как и почему значения выводятся в обратном порядке, теперь всё супер)) Пробовал все задачи из прошлого дз, отладчик работает без проблем.

ivashkevich 11.04.2020 в 21:10

Красава)

Allaga 11.04.2020 в 14:25
 Настроила отладку, попрактиковалась, отдебажила.
ivashkevich 11.04.2020 в 21:29

Супер!

[email protected] 15.04.2020 в 22:13
 echo ', ' . $x;

Запятая взятая с в апострофы - добавляет запятую между каждым числом при выводе.
Это как правило? Такое сочетание добавляет запятые между каждым символом или как это сформулировать, чтобы понять?

ivashkevich 16.04.2020 в 06:52

Прочитайте про конкатенацию строк

[email protected] 24.04.2020 в 08:55

Настроил отладку. Все работает. Пробую дебажить.

ivashkevich 24.04.2020 в 11:28

Отлично!

Artt 25.04.2020 в 19:59

Здравствуйте. На данном этапе возникла проблема. У меня macOS, следовательно пользоваться OpenServer невозможно. Пользуюсь MAMP. Прежде чем писать, естественно, загуглил - XDebug встроен по умолчанию, но только в платную версию MAMP-PRO. Хотелось бы получить совет от автора, какой сервер, совместимый с macOS, вы бы порекомендовали, чтобы в дальнейшем, в рамках данного курса, не возникало проблем. Спасибо.

ivashkevich 25.04.2020 в 21:01

Здравствуйте. Сам использую MAMP PRO на маке

Artt 26.04.2020 в 16:40

Разобрался как настроить Xdebug на бесплатной версии MAMP. Теперь все работает. Идем дальше ))

ivashkevich 26.04.2020 в 17:09

Супер)

IePyton 06.05.2020 в 15:29

подскажи пожалуйста как? то что гуглю - не работает

Artt 06.05.2020 в 22:52
  [Тут](https://schurpf.com/xdebug-phpstorm-mamp/) есть подробное описание.  
IePyton 07.05.2020 в 09:15

Спасибо!

annferny 01.05.2020 в 15:15

День добрый,
Я дошла до пункта: "Теперь возвращаемся в Chrome, заходим на адрес нашего проекта (в моём случае http://myproject.loc/) и после того как зашли(!!!) жмём на значок жучка (уже в Chrome) и выбираем пункт “Debug”."
После обновления страницы она не повисла в загрузке, а в PhpStorm в разделах написано frames: "frames are not availiable"; varibles: "Waiting for incoming connection with ide key 'PHPSTORM'".
Использую openserver и PhpStrom.

ivashkevich 01.05.2020 в 15:30

Привет, напиши в личку

Alex-neo 22.05.2020 в 01:23

в отладчике в Variable надпись: "Waiting for incoming connection with ide key 'PHPSTORM'".
И ещё, F7, F8, F9 - у меня не работают, т.е. никаких действий не происходит

ivashkevich 22.05.2020 в 08:17

Попросите помощи в чате в телеге. Но перед этим можно попробовать открыть проект в шторме с диска W:

leffo 15.06.2020 в 16:10

Артём, а можете рассказать про настройку отладки PHPSTORM+DOCKER(php-fpm+nginx), когда приложение запущено в DOCKER-контейнере?
Был бы Вам очень признателен!
Этот кейс сейчас очень востребован, и я думаю, неплохо было бы пролить свет на эту темную проблемку.

Malfak 06.09.2020 в 08:50

Сделал как в видео, то есть добавил строчки для xdebug в openserver и после настроил в phpstorm,но всплывающего окошка в правом верхнем углу экрана нет и пишет addconfiguration, что делать?
P.S проблема решена

[email protected] 02.11.2020 в 14:57

Добрый день.
У меня возникло пару проблем:

1) Установил все как в уроке было, отладчик запускается и информацию показывает, НО.
Когда обновляешь страничку она в браузере не грузится, но информацию отладчику передает.
Если Отключить отладчик, тогда страница грузится.

2) В видео на времени 11.30
При перезапуске отладчика в поле дебага все убралось и отобразился только один уровень с итогом. Чтоб появилась вся информация, пришлось снова нажимать Ф8 или Ф9
И после этого все равно в Watches только в одном стеке есть значение Х

Сейчас посмотрел, после выполнения всех итераций кода страничка прогружается.

Правильно ли я понял касательно работы рекурсии в последнем задании прошлого ДЗ: получается, что тот код сначала считает все значения Х и после их выводит от обратного? Так всегда происходит?
Т.к. у меня сложности возникли именно с выводом значений в обратном порядке, для этого пришлось вводить вторую переменную.

ivashkevich 03.11.2020 в 18:01
  1. Всё правильно, прежде чем она отобразится, скрипт должен отработать до конца. Пока отладчик стоит на брэйкпоинте, выполнение скрипта на паузе, страница продолжает формироваться.
  2. Рекомендую погуглить про рекурсию, не понял пока вашего вопроса, кто там кого считает) Посмотрите альтернативные источники.
Deo 11.11.2020 в 00:36

А у меня точка останова не срабатывает.
Ну и "Waiting for incoming connection with ide key 'PHPSTORM'" в Variables.
В phpinfo() инфа о xdebug есть - v2.9.8.
На ошибки в коде PhpStorm указывает.

ivashkevich 13.11.2020 в 02:26

Скорее всего пути не сходятся. Опенсервер при запуске монтирует виртуальный диск?

Deo 13.11.2020 в 12:20

Точно, путь был неправильно прописан.
Моя ошибка.
Теперь вроде всё заработало!

ivashkevich 15.11.2020 в 08:02

Супер!

vbd 18.11.2020 в 11:38

Добрый день, не получается настроить отображение var_dump построчно. В ini-файле раскомментировала следующие строки:

xdebug.overload_var_dump        = 1
html_errors                 = on

не помогает...

ivashkevich 19.11.2020 в 20:34

Попробуйте по этой инструкции

Alex-neo 04.02.2021 в 23:06

У меня XDebug не работает как должно.
Во вкладке Variables написано:
"Waiting for incoming connection with ide key 'PHPSTORM'".
описание картинки

ivashkevich 05.02.2021 в 07:49

Он так и должен писать. Посмотрите видео, у меня так же пишет)

ChelovekAndrey 02.04.2021 в 14:22

Привет!
Обновлял у себя версию openserver'а. В версии Open Server 5.3.8 используется версия Xdebug 3.0.2, и для активации необходимо использовать другие параметры для php.ini так как со старыми уже не работает.

*Примечание: в Xdebug 3 по умолчанию прописан порт 9003, поэтому надо либо его сменить на 9000, либо в phpStorm поставить порт 9003.

По параметрам получилось следующее:

zend_extension="%sprogdir%/modules/php/%phpdriver%/ext/php_xdebug.dll"
xdebug.mode = debug,develop
xdebug.client_host = "localhost"
xdebug.client_port = 9003
xdebug.connect_timeout_ms = 200
xdebug.idekey = "PHPSTORM"
ivashkevich 04.04.2021 в 16:14

Привет! Но по уроку же и в шторме выставляем 9000 и в php.ini. Разве нет?

ChelovekAndrey 04.04.2021 в 17:41

Да, это я напимер написал. В документации написано что из-за изменения порта по умолчанию, слушаются и 9000 и 9003. В общем не важно. Суть в новых параметрах для пхп.ини
Параметры:

xdebug.remote_enable
xdebug.remote_port
xdebug.remote_handler
xdebug.remote_connect_back

Убрали из новой версии в принципе.

serega19860511 13.04.2021 в 21:52

С дебагером разобрался, всё настроено, всё работает, но вот видимо рекурсию понял не до конца. Точнее проблема как и у всех комментаторов, когда дошли до нуля как echo начинает отрабатывать и выводить 1, 2, 3 и т.д.

[email protected] 02.05.2021 в 16:37

А это обязательное требование, устанавливать Debag?

ivashkevich 19.05.2021 в 21:05

Нет. Но без него придется тяжко

Mediaphag 09.11.2021 в 21:56

:beetle: Install and Configure xDebug v3 on Ubuntu for PhpStorm :elephant:

  • Assuming that you have already installed php and apache
  • Install xDebug php extension

    sudo apt-get install php7.4-xdebug
  • Edit your xdebug.ini
  • Your xdebug.ini file path should look like this
    • /etc/php/7.4/mods-available/xdebug.ini
  • Add these lines without modifying exiting
    
    # Configuration for Xdebug 3
    [Xdebug]
    zend_extension="xdebug.so"

xdebug.mode=debug,develop
xdebug.start_with_request=default
xdebug.idekey=PHPSTORM
xdebug.client_port=9003
xdebug.file_link_format=phpstorm://open?%f:%l

* Restart the apache server to reflect changes

sudo service apache2 restart


* **Configure phpStorm**
* Go through - Settings >> PHP >> Debug
* Ensure that 'Debug port' is the same as you have in your `xdebug.ini`. In our case it was `9003`.
* Save and close the Settings Dialog

* **Start debugging**
* Create some [breakpoints](https://www.jetbrains.com/help/phpstorm/breakpoints-2.html) in your project 
* Make sure those breakpoints gets executed when your visit your website in browser.
* Start listener by clicking on the telephone :telephone_receiver: button on top toolbar
* If you can't find telephone button; then go through menus - Run -> Start listening for PHP Debug Connections 
* Use [chrome extension](https://chrome.google.com/webstore/detail/xdebug-helper/eadndfjplgieldjbigjakmdgkmoaaaoc?hl=en) 
* Configure this chrome extension and set IDE Key to `PHPSTORM`
* Visit your website
* You should see a popup window in PhpStorm , click **Accept** connection 
* Done, enjoy debugging !!!

-----

### Disable xdebug

sudo phpdismod xdebug

### Enable xdebug back 

sudo phpenmod xdebug

### Disable xdebug for commandline only 

sudo phpdismod -s cli xdebug

Логические задачи с собеседований