не будет, если я пишу my $vaz я создаю новую переменную $vaz, какая уж тут опечатка
Ну так ты ж понимаешь, что твой пример на перле не эквивалентен примеру на пхп?
что-то как то грустно от Ваших слов
потому я и спросил в этом канале предоставить мне эквивалент на пхп, можно с линтером
Он имеет ввиду что в пхп создание переменной и присваивание ей значение не имеет разницы, в отличие от перла на которым вы приводите пример
Я думаю, такого примера не существует..
Прекращайте троллить уже. Второй день обсуждает проблему, высосанную из пальца. Используйте нормальную IDE, она Вам всё подскажет.
Можно сделать свой метод, который будет проверять память на наличие переменной и кидать throw, если такая переменная уже есть. Но это всё не из коробки. Из коробки эквивалента нет
задаю вопрос 3 раз: как ИДЕ поможет мне выявить данную проблему?
isset перед каждым присваиванием? предлагали уже
Она подсветит, что первая переменная не используется!
Ну, что-то типа того. Но это всё костыли.
ну естественно нужно валидировать входные данные
Он как минимум будет подсказывать переменные которые ты хочешь использовать и которые существуют
В любом случае, это не пхп подход. Если хочешь работать в такой парадигме, тебе не надо писать на пхп
как ИДЕ понимает что переменная "используется"? обе переменные были слева при вызове оператора присваивания
станет серой с варнингом unused variable. В go например ты даже скомпилить не сможешь код если такая переменная будет.
я хочу работать в парадигме в которой работают скилованные пхп инженеры. проблема в том что вы не предоставили ни одного варианта как быть
"скиловатые" как Вы говорите сначала пишут тесты а потом уже сам код который реализует логику
Скиллованные пхп инженеры не страдают такой хернёй. Проблема не в том, что я не предоставил таких вариантов, а в том, что ты хочешь работать в парадигме, привычной тебе, но не привычной (чуждой) пыхарям. Так понятно или ещё нет? )
100% покрытия тестами это недостижимый идеал
а идеального кода тоже не бывает
идеальный код это нечто субъективное и трудноуловимое. тикет в жире потому что юзер получил в браузере неверное значение, поскольку на 5786 строке в 1235 файле проекта была допущена опечатка в переменной вполне реален
смотря что и как задумываешь, можно достичь и 100%
если это hello world то да
такова цена использования пхп, что-то он упрощает, но и берет за это свою цену
это касается всех микросхем
имею в виду все комплексное, что упрощает, ускоряет разработку, удешевляет использование
Берёшь PHPStorm, пишешь к нему плагин, который будет вычислять расстояние Левенштейна для всех пар названий переменных в проекте, и подсвечивать там где оно будет наименьшим.
дело в том что переменная с мин расстоянием Левенштейна не всегда опечатка, это не вариант. в частности рассмотрите: $var $val, $low $row, etc
В вашем случае, если перевести на реальный мир. Вы задаёте вопрос следующего характера: Решил использовать железный топор для того что бы колоть дрова. До этого использовал резиновый топор, дрова рубит он плохо, но если быть не внимательным и ударить себе по ноге, то было не больно. А железный топор плохой тем, что если попасть по ноге, то можно порезаться. И все кто используют железный топор, чудаки. Выход такой, либо не использовать железный топор, либо писать без опечаток, а код обкладывать тестами, что бы ни хорошие случаи ловить.
Для вас ещё подходящий вариант: Напишите на perl свой компилятор из perl в php и будет счастье
В частности $val, как раз может быть опечаткой $var, с расстоянием 1. Ну а если у вас в проекте куча переменных с названиями var, vad, gad, gar, то у вас проблемы с именованием переменных
та ну тебя
Интересно в каком кейсе нужна переменная вар
дело в том что perl и php это два топора разных производителей: оба с деревянной ручкой, и металической ударной частью.
может быть, а может не быть. потому идея с Левентштейн не очень
Так берёшь пишешь много кода на php, в ручную ищешь опечатки, размечаель датасет, пишешь на perl нейросеть, обучаешь её на своём датасете, и если все сделаешь правильно, она лично в твоём коде будет находить опечатки
все судьи поставили 5 вам на разминке
Обсуждают сегодня