Найти строку кода или файл, в котором установлен параметр php - PullRequest
0 голосов
/ 17 декабря 2010

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

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

Идея: У меня есть имя и значение переменной.Теперь, если оба совпадают, определенное событие должно быть запущено и отображать фактический проанализированный файл и номер строки.

Все идеи, которые помогают, приветствуются.

Спасибо,-lony

PS: Возможно ли это, даже если приложение не является объектно-ориентированным и использует много спагетти-кода?

Ответы [ 3 ]

0 голосов
/ 17 декабря 2010

Я хотел бы, чтобы вы сделали debug_backtrace в точке, где произошла ошибка, и попытались бы использовать трассировку стека, чтобы увидеть, где переменная изменяется.Debug_backtrace выдаст вам список включенных файлов после того, как будет довольно легко отфильтровать список строк с помощью глобального поиска (т. Е. grep)

var_dump(debug_backtrace())

0 голосов
/ 17 января 2011

Я нашел решение одной из своих проблем. Функция debug_print_backtrace помогла мне окончательно отладить мой код спагетти. Я нашел это, прочитав этот пост .

-Cheers

0 голосов
/ 17 декабря 2010
if (variable == value) {
    echo "variable equals value, line #whatever"+"<br/>";
}

Просто поместите их в различные точки кода и посмотрите, какие из них отображаются.Вручную введите номера строк.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...