LINUX.ORG.RU

Это должны уметь более менее адекватные IDE. Помнится Netbeans такое умел. В Phpstorm по дефолту вроде не работает, но это не точно. Опять же, зависит от контекста.

ilinsky ★★★★★
()
Последнее исправление: ilinsky (всего исправлений: 2)
Ответ на: комментарий от udhv

Отличный совет как делать не надо. Ты предлагаешь вместо того что бы найти переопределение, объявить константу? Молодец.

ilinsky ★★★★★
()
Ответ на: комментарий от ilinsky

В Phpstorm по дефолту вроде не работает

надо доустановить php inspections который хорошо ловит подобный говнокод

wxw ★★★★★
()
Ответ на: комментарий от pinachet

На сколько я помню, он был по дефолту включен в 8.x ветке. Когда переопределяешь переменную, он говорил к конкретному куску кода о том что есть переопределение. Я к сожалению не могу сказать как там сейчас с этим дела.

ilinsky ★★★★★
()
Последнее исправление: ilinsky (всего исправлений: 1)

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

abcq ★★
()
Последнее исправление: abcq (всего исправлений: 1)
Ответ на: комментарий от pinachet

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

Там выше человек правильно написал, проще сделать константой переменную, или как вариант не пользоваться ассоциативным массивом, а пользоваться какой-то другой иммутабельной структурой.

Ну и последний вариант просто погрепать исходники и посмотреть где идет переприсваивание, оно скорее всего где-то рядом.

abcq ★★
()
Ответ на: комментарий от Noob_Linux

а консольно при анализе оно будет такое говорить ? и если между двумя определениями еще определение других переменных ?

pinachet ★★★★★
() автор топика
Ответ на: комментарий от pinachet

а консольно при анализе оно будет такое говорить ?

ну это уже от линтера зависит, это лишь IDE для быстрой обратной связи по простым ошибкам.

и если между двумя определениями еще определение других переменных ?

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

попробуй https://psalm.dev/ он довольно неплох если нужен хороший стат анализ.

Noob_Linux ★★★★
()
Последнее исправление: Noob_Linux (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.