- 1
- 2
- 3
/index.php/module/action/param1/${@die(md5(HelloThinkPHP))}: 1 Time(s)
/index.php?s=%2f%69%6e%64%65%78%2f%5c%74%6 ... %6e%6b%50%48%50: 1 Time(s)
/index.php?s=/module/action/param1/${@die( ... elloThinkPHP))}: 1 Time(s)
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
/index.php/module/action/param1/${@die(md5(HelloThinkPHP))}: 1 Time(s)
/index.php?s=%2f%69%6e%64%65%78%2f%5c%74%6 ... %6e%6b%50%48%50: 1 Time(s)
/index.php?s=/module/action/param1/${@die( ... elloThinkPHP))}: 1 Time(s)
такую вот хуйню в логах вижу
пыха у меня разумеется никакого нет, но что это вообще такое? Что так ломают?
пых
Проверяют наличие HelloThinkPHP в аргументах?
https://github.com/top-think/framework/blob/6.0/src/tpl/think_exception.tpl
какой темплейт ))
https://github.com/top-think/framework/blob/6.0/src/think/facade/Console.php
какой фасад ))
Странно, что в темплейте нет «SQL».
>> какой фасад ))
ООП гойловного мозга. Ни один метод ничего не делает, все только возвращают чьи-то имена. Даже не знаю, что лучше: спагетти из goto или спагетти из делегаций.
Ага, и отдельные каталоги под контроллеры, вьюхи и т.п. Зачем? Зачем?
В подавляющем большинстве случаев нужно деление на "логику" и "представление".
Всё прочее деление - последовательное деление "логики" и "представления" на их составляющие вплоть до квантов кода (деление "логики" на "подлогики" и "представления" на "подпредставления" и/или "логики" на "подлогику логики" и подпредставление логики", а "представления" на "подлогику представления" и подпредставление представления").
"Логика", "представление" и иерархия разбиения кода естественным образом в большинстве проектов, а отдельные слои "M", "V", "C" - нет.
Когда читаешь код, сделанный под "фреймворком", хочется блевануть. Ради пары страниц кода добавлена зависимость от фреймворкового говна, проект засран пустыми папками под термины фреймворка, кругом происходит передача данных на деревню к дедушке и много делегирования. Кроме прочего, некоторая питушня проходит неявно. Ты просто так не скажешь, файл/класс/функция где-то явно зарегистрированы, или же у них просто специальные имена, по которым фреймворк выбирает и запускает их. Без знаний фреймворка никак не скажешь.
Мудрый подход используют программисты на "PHP", создавая свои фреймворки. Когда их проект созрел до выделения какой-то идеологии, они пишут фреймворк, проповедующий эту идеологию.
Таким образом, одностраничное говно не успевает обрасти идеологией, родить фреймворк и заставлять следующего программиста копаться в этом говне. Для мелкого говна и городить фреймворк-то будет лень. А в более сложных проектах появляется фреймворк, который красиво дополняет суть проекта, черпает идеологию из предметной области и т.д.
Причём топлива для блядского цирка добавляет то, что в «MVC» регулярно находят Фатальный Недостаток, в результате чего рождаются «MVP», «MVVM» и ещё М-хуй-знает-что в тысячах вореаций, а программисты вместо программирования занимаются натягиванием логики на модные баззворды.
Мало кто чувствует баланс психозы в коде. Новичок его ещё не чувствует, опытный - уже не чувствует. Первый думает, что нормально иметь в коде тонны лапши, второй - что тонны абстракций. И с ростом в области программирования абстрактность только растёт. Программиста спасает только то, что он раньше уходит на пенсию, чем попадает в дурку.
Иногда выходит до шизофреничности* уровня монад, когда одна и та же концепция охватывает
- ввод-вывод
- работу с состоянием
- работу с коллекциями
- исключения
- абстрактный комбинатор любых двух предыдущих пунктов
_____________________
* При шизофрении происходит "расстройство классификации". Абстрактное мышление пациента разрабатывается до такого состояния, что в нём можно спрятать банку сгущёнки, ибо у неё находятся тысячи логичных признаков сходства с любым другим объектом, из которых можно выделить несколько основных уровня "у банки сгущёнки и у X совпадает количество единичных битов в контрольной сумме их названия".
Однако хотелось бы заметить, что к программированию указанные две вышки не относятся, скорее к информатике, физике и схемотехнике.
Имхо, это всё тот же новичок, только начитавшийся про абстракции.
Просветление проходит чуть позже, когда начинаешь чувствовать тот самый баланс и понимаешь где провести границу интерфейса, где подрочить на пирфоманс, а где забить на красоту и сделать всё по-тупому.
А за ним - старость, когда уже думать не так легко и проще использовать универсальное решение.
А мы тут гыгыкаем над метапрограммированием в крестах.
Подтверждаю.
Мне кажется, либо система слишком простая, чтобы этого там в явном виде не было, либо более сложная, где надо делить более сложно.
> Готовые фреймворки вроде джанги или спринг мвц представляют тебе бест практисес, заставляя даже макаку писать более-ли-менее логично
Ну так себе бест практисес уровня двача тематических форумов, где велосипедисту, желающему послушать музыку во время покатушек, предлагают продать Каму и купить Ультрапитух 9000 Горный Игровой с дисковыми тормозами и плазменным ускорителем, а музыку слушать вместо анскильных наушников дома со стационарных колонок за 20000 рублей (естественно, белорусских).
То что я ем говно на обед и ебусь в жопу совсем ничего не значит!
Попросили токаря и программиста сделать прямоугольный параллелепипед 10*20*30.
Токарь наточил резец нужного типа и выточил прямоугольный параллелепипед с помощью школьной геометрии.
Программист взял шаблоны C++, кучу паттернов проектирования, boost, пару фреймворков, иерархическую файловую систему и отдельный сервер под репозиторий системы контроля версий. Попросил новый штеуд под IDE и компилятор. Взял два компилятора - предварительный и JIT. Создал синглтон, несколько пакетов, написал отдельный модуль для хранения конфигураций размеров, развёл иерархию с виртуальными методами. Реализовал многомерный гиперкуб со скруглёнными углами. Использовал декартово произведение и матричные формулы. При попытке объяснить, что гиперкуб n*n*...*n никак не может стать прямоугольным параллелепипедом 10*20*30, и за скруглённые углы никто не заплатит, начал ворчать что-то про вредных заказчиков и соответствие его кода Священным Паттернам и расширяемость на любое измерение.
P.S. Когда программист узнал, что токарь выточил прямоугольный параллелепипед на станке для работы с телами вращения, начал рассказывать, что токарь врёт, и это на самом деле цилиндр с нарисованными рёбрами, и вообще заказчику на самом деле нужен только гиперкуб.
Потому что те программисты, которые просто берут и вытачивают параллелепипед 10*20*30, неизбежно оказываются в ситуации, когда заказчику вдруг оказывается надо пирамиду 15*42*265.
Ну и ещё отчасти виновата лень программистов, потому что они не хотят каждый раз вытачивать параллелепипед x*y*z, они хотят выточить многомерный гиперкуб один раз, а потом нажать одну кнопку и получать любые конфигурации выпуклых трёхмерных фигур любого размера.
Развитие программирования — это, в сущности, эволюционный процесс, главным критерием естественного отбора в котором является общая эффективность выполнения нужд заказчиков. При этом эффективность — параметр комплексный, включающий в себя и скорость разработки, и скорость работы конечной программы, и простоту обучения, и сложность поддержки, и надёжность решения, и много чего ещё. Разумеется, оптимизация каждого из этих параметров по отдельности совершенно не обязательно ведёт к улучшению общей эффективности, скорее даже наоборот.
Хороший пример работы этого процесса — «PHP»: в области разработки гостевух он имеет практически идеальные значения указанных параметров (быстрая разработка, крайне простое обучение => много программистов, а на все остальные параметры в этой области похуй).
Поэтому всё, на чём мы пишем, так или иначе, прямо или косвенно, является результатом выполнения желаний заказчиков.
Беда не в том, что они есть. Беда в том, что они востребованы.
А те немногие, которым не похуй на скорость выполнения и потребление ресурсов (они есть, не всё так плохо), вынуждены прозябать в очень узких областях и использовать инструменты, которые специально спроектированы для анскильных макак.
*по результатам исследования ООО «НИИ ХУЯ» от 42.13.2021
А программист один раз сделал код красиво, а он 100000 раз запустился, хотя программист не писал код остальные 99999 раз красиво. Когда его попросили переделать цвет менюшки, он не написал код красиво, а изменил строку кода, который потом ещё 1000000 раз запустился, хотя код был написан целиком только раз.
Мир: чтобы получить результат второй раз, надо столько же работать.
Программист: чтобы получить результат второй раз, надо исправить одну строку или вообще ничего не делать.
Программирование - питушня, оторванная от мира.
Просто IT — это область, в которую крайне органично вписывается автоматизация (в том числе и из-за «ГОМОИКОННОСТИ»).
Ты думаешь, что если бы у плиточника была волшебная машинка, которая по нажатию на одну кнопку перекрашивала все плитки во всей комнате, он бы ей из принципа не пользовался? Нет. Автоматизация рутины — это совершенно естественный процесс, присущий не только IT, но и абсолютно любой области человеческой деятельности.
Ничего оторванного от мира в автоматизации нет.
Ворочать битами же можно почти бесплатно. Наука публикует только вскукареки про квантовых питухов уровня "бит не может быть меньше кванта, поэтому энергия переключения такая, плотность записи такая", других ограничений нет. Даже медленную скорость света можно победить компактизацией.
Информации как таковой в нашем мире не существует. Все вскукареки про причинность и невозможность передавать информацию быстрее скорости света обусловлены только тем, что информация для своего отображения в из мира идей в мир вещей имеет физическую форму либо прилипает к физическим объектам. Энергозатраты работы с информацией связаны только с тем, на насколько мелкий кусок материи мы сможем налепить информацию.
Поэтому плиточнику через годы будет нужна энергия на чудо-машинку, а программисту - только на поддержание мыслительной деятельности, т.к. анскильный мозг так и будет потреблять сотню ватт, тогда как аналогичный по мощности компьютер уже будет помещаться в часы, питаемые батарейкой из картофелины.
Отнюдь не бесплатно. В реальном мире энергопотребление компьютеров — серьёзная проблема, в немалой степени ограничивающая рост производительности.
Да, в теории, нижний предел характерной энергии, необходимой для переключения битов, находится в планковских районах.
А вот на практике мы уже вплотную подошли к размерам, на которых квантовое туннелирование разрушает любые вычисления (это размеры транзисторов порядка нанометра). Скорость света компактизацией победить не получится по тем же причинам.
> Информации как таковой в нашем мире не существует.
> мира идей
Оторванная от реального мира питушня. Как ты себе представляешь информацию, не имеющую никакого физического отображения? Такой «информации» в принципе существовать в реальном, физическом мире не может. Любая «идея» — это как минимум уникальная конфигурация нейронов в мозгах её создателя.
> анскильный мозг так и будет потреблять сотню ватт
На самом деле около 12 ватт, но не суть.
Я всё никак не пойму, к чему ты клонишь. Да, создание программы может быть менее энергозатратно, чем создание какого-нибудь физического продукта (а может и не быть, кстати). Ну и что? Как из этого следует вывод, что автоматизация создания физических продуктов — ОК, а автоматизация создания программ — не ОК и вообще оторвано от мира?
В текущей реализации. У нас ещё остаются другие методы реализации, как минимум - оптушня и квантушня.
В квантушне ещё уважают обратимые операторы, ведь только с ними можно написать царский код. Необратимый код так или иначе теряет информацию, а значит и энергию
> Как ты себе представляешь информацию, не имеющую никакого физического отображения?
Я представляю не её саму, а работу с ней. Как вселенский Интернет или устройство, замапленное в память. На материю налипают не сгустки информации, а информационные трубы, ведущие в мир идей.
То есть есть у тебя жёсткий диск. Ты записываешь в первый сектор адрес, затем стираешь диск, чтобы считать информацию из трубы. После этого читаешь диск, а там отображение информации по нужному вселенскому адресу.
> автоматизация создания физических продуктов — ОК, а автоматизация создания программ — не ОК и вообще оторвано от мира?
Потому, что мир принципиально материален, а информация - нет. Оптимизация физикушни - перенаправление энергии (трата энергии не слабого человека, а сильных машин), а оптимизация программушни - уменьшение затрачиваемой энергии (трата энергии не на горячие лампы, а на процессор с пометкой U). Оптимизация физикушни будет всегда стоить примерно столько же, а оптимизация физикушни будет только дешеветь, либо достигнет точки, когда обменный курс массы будет I = m c^2 или больше.
Те же самые проблемы.
> квантушня
Другие проблемы, до сих пор нерешённые. Некоторые учёные вообще сомневаются, что квантовые вычисления в принципе возможны в том виде, в котором их представляют маркетологи.
> ведущие в мир идей
Но ведь никакого «мира идей» не существует, во всяком случае, в рамках науки. А размышления о параллельных мирах несколько не состыкуются с изначальным тезисом о том, что программирование оторвано от реального мира.
> а информация - нет.
Но ведь я уже объяснил, что в реальном мире — в том, где мы живём — информация в любом случае будет выражена физическими объектами. Никаких Вселенских Интернетов, из которых нам магическим образом приходят знания, не существует.
Ну да, мы можем до некоторых пределов оптимизировать затрачиваемую на вычисления энергию. И что?
Чем принципиально отличается программист, автоматизирующий создание программы, от кузнеца, автоматизирующего создание лопат? В конечном итоге что первый, что второй просто нажимают кнопку и получают конечный продукт. Да, они затрачивают на это разное количество энергии. Но, например, создание самосвала требует на порядки больше энергии, чем создание лопаты. Из этого же не следует, что создание лопат оторвано от реального мира?
Нет. Это современной науке не удалось открыть вселенские интернеты.
Нельзя доказать отсутствие вселенских интернетов, тогда как для доказательства их наличия достаточно всего лишь одного воспроизводимого эксперимента.
> Чем принципиально отличается программист, автоматизирующий создание программы, от кузнеца, автоматизирующего создание лопат?
Хороший вопрос. Вероятно, ничем.
Различие остаётся только в коробочке, кнопку от которой они жмут.
У кузнеца там прямое воздействие материи на материю.
У программиста - непрямое воздействие материи на информацию.
Кузнец своими/чужими делает сразу то, что нужно, программист своими/чужими руками делает не то, что действительно нужно, а то что косвенным путём решит задачу (например, намагничивание и испускание волн для автоматизации финансовой деятельности).
И, как мы выяснили, работу кузнеца можно будет изменить и в конечном счёте добиться того, что он будет делать то, что нужно (например, ходить на войны биться своим мечом), а программист всегда будет уклоняться и каждый раз работать через какой-то интерфейс, и так никогда не станет ковать информацию.
> Из этого же не следует, что создание лопат оторвано от реального мира?
Великолепно!
Мне кажется, стоит ввести нормировочные коэффициенты вроде энергии или массы на штуку или пользу. Тогда самосвал будет стоить производителю чуть больше чем лопата, но не на порядки, а информациушня - всё ещё на порядки меньше. Или же наоборот, килограмм самосвалов и лопат будет где-то на одном уровне, а за килограмм программ можно будет отдать очень много.
Рассматривать принципиально нефальсифицируемые («нельзя доказать отсутствие») гипотезы — удел религии, а не науки.
> У программиста - непрямое воздействие материи на информацию.
Ну, фактически это не совсем так. В прошлом программисты вполне себе напрямую воздействовали дыроколами на картон перфокарт, дальше на основе этих дырок генерировались определённые последовательности движений электронов, которые, в конечном итоге, приводили опять-таки к материальным изменениям во внешнем мире — дырявились другие перфокарты, загорались лампочки.
В принципе, в современном мире всё осталось так же, только вместо дырок на картоне программист работает с дырками в полупроводниках.
> Мне кажется, стоит ввести нормировочные коэффициенты вроде энергии или массы на штуку или пользу.
А потом раскулачить программушков!
> нефальсифицируемые («нельзя доказать отсутствие») гипотезы
А мне кажется, "нельзя доказать отсутствие" - свойство избранной нами логики, она не влияет фальсифицируемость высказываний про свои объекты. Нельзя доказать отстутствие чего угодно, как богов, так и электронов, не важно, фальсифицируемы ли высказывания про богов или электроны.
Научная питушня просто конкретнее ненаучной. Менделеев говорил "вот у элемента Ху будут свойства такие", и потому эту питушню можно было опровергнуть, проверив Ху и показав обратное. А ненаучная питушня "вот будет питушня, у которой свойства такие", и надо проверить бесконечность питушень, чтобы сказать, что нет - нефальсифицируемость.
И может быть так, что кто-то вместе с Менделеевым ляпнул ненаучно о том, что существует питушня с указанными свойствами. В итоге получилось, что питушня такая действительно существует, хотя утверждение о ней было ненаучном.
Научность через фальсифицируемость гарантирует лишь "конструктивную критику" текущих идей - утверждение включает себя алгоритм по его обработке научными методами.
Ненаучные идеи - сырая информация, не обязательно неверная. Ненаучные идеи могут описывать как небылицы, так и реальность будущего.
> напрямую воздействовали дыроколами на картон перфокарт
Они дыроколами косвенно воздействовали на информацию, которая должна была как-то обрабатываться!
Вообще, чтобы надёжно показать, что я говорю питушню, надо пойти к истокам.
Никакой информации в материальном мире нет. Программисты решают задачи материального мира через выдуманное их преобразование в информационные объекты. Преобразование выходит двойное - из реальной задачи в работу с "информацией", а затем из работы с "информацией" в реальный мир (программа управляет физическим ковшом экскаватора). Но в итоге программист средствами физические компьютеров воздействует на физические. И в этом смысле кузнец полностью эквивалентен программисту+админу на фабрике боевых копий.
Можно доказать неверность (то есть опровергнуть) высказанной гипотезы в случае, если она фальсифицируема. Если этого сделать нельзя — значит, гипотеза нефальсифицируема, и рассматриваться в качестве источника научного знания не должна. Отдельно замечу, что анафеме подлежит именно гипотеза в целом, а не конкретные её идеи или предположения, которые вполне могут быть научными.
> Ненаучные идеи - сырая информация, не обязательно неверная. Ненаучные идеи могут описывать как небылицы, так и реальность будущего.
Верно, однако в научном контексте рассматривать ненаучные идеи бессмысленно. Это то же самое, что и чтение /dev/urandom в попытке найти там лекарство от рака. Безусловно, если достаточно долго читать (и если там достаточно энтропии, а то знаем мы эти ГПСЧ…), то оно в конце концов найдётся. Только времени это займёт несоизмеримо больше, чем поиск того же лекарства более… научными методами.
Более того, у всех нефильсифицируемых гипотез есть Фатальный Недостаток: они не предоставляют научно-значимых предсказаний.
Любая научная гипотеза может предсказывать определённые события исходя из определённых предпосылок. Из наличия двух материальных точек с массами m1 и m2, находящихся на расстоянии r, теория тяготения Ньютона предсказывает существование силы притяжения между ними, численно равной F = G*m1*m2/r^2 Н. Из этого предсказания выводится фальсифицируемость этой теории: если в корректно поставленном эксперименте вместо F наблюдается какая-то другая сила — значит, теория опровергнута.
Поэтому, если некоторая теория содержит проверяемые предсказания («кто рано встаёт — тому бог даёт сто рублей под подушку»), то её можно опровергнуть экспериментом. Обратно, если теория неопровергаема, значит, научно-значимых предсказаний она не содержит.
А если теория не содержит научно-значимых предсказаний — то зачем она вообще нужна? Любоваться на неё?
Такая теория может вдохновить кого-то, чтобы тот включил дурачка творческий процесс.
Идея вселенских интернетов может дать пинок математикам для разработки более эффективных сжатия и передачи информации, т.к. очевидно, что в мире вселенских интернетов основным боттлнеком будет физическая питушня, к которой прилипла информационная трубка.
Ну или дать пинок самой науке. В принципе, науке в целом пофиг, где копать. А заинтересованный учёный на гранты от питухов, прозомбированных идеей вселенских интернетов, уже может копать там, где клейкость информационных трубок может быть выше.
Инженер вовсе может аппроксимировать ненаучные знания реальным прибором. Вместо скатерти-самобранки - сервис по доставке еды, вместо м...тв - указания голосовому помощнику.
Тем не менее, опираться на них в контексте научной дискуссии всё же не следует.
А и правда, мы пришли к тотальному материализму. Именно поэтому я за «материализм».
Ты серьёзно? Просто смирись с тем что иногда (почти всегда) надо быстро высрать решение которое просто будет работать на данный момент и может ещё месяц а там уж как-то пофиксим.
Так в большинстве случаев. Вот сегдня надо было через анус завайтлистить в скрипте (!!!) регуляркой нахуй (!!111) ип провайдера который делает обращение на наш вебхуйк чтобы наш оператионс манагер мог протестить фичу, причём сука там пол интернета надо было вайтлиснуть потому что провайдер вконец охуел и ему тупо лень сказать с каких конкретно ип идут его ебучие хттп запросы.
Ты думаешь их нахуй это ебёт? Наши тесты прошли, клиенту понравилось. Он купил нашу услугу которая тоже сделана из поноса голодного мамонта.
Привыкай вытачивать параллелипипеды стенками своего ануса.
А что, это не так?
Мы пишем говно на говне потому, что заказчики платят за говно.
Крутые тимлиды и манагеры которые хотят переписать все легаси проекты используя последнейшие свистоперделки потому что все крутые ребята так делают и потому что у них много тысяч звёздочек на гитхабе - вот главное пидоры. Хер что их убедишь что не стоит на хуй пойми чём писать апи для всех проектов (в том числе фин проекты) сразу, что не надо использовать этот ебаный фреймворк который выпускает по три мажорных версии в год потому что хотят продать тебе курсы и гайды, и у которых в LTS больше дыр чем в сыре.
Это, конечно, взгляд с моей стороны, вполне возможно что с твоей всё по-другому.
В массе своей заказчики хотят получить результат побыстрее и подешевле (и это вполне объяснимо). Но с другой стороны, мало кто из них задумывается над такими сложными понятиями, как «стоимость поддержки», «надёжность» и прочей питушнёй. Как результат — языки, поощряющие написание write-only говна, получают серьёзное эволюционное преимущество.
> на станке для работы с телами вращения
> параллелепипед
Странный токарь, видимо раньше на крестах писал...
https://youtu.be/y4825p-_qZM
Вот это наверняка крестовик придумал.
Какой топор )))
Кстати, у трамвайных рельсов с жёлобом железо более твёрдое (иначе бортик жёлоба будет гнуться).
В «Ютубе» я ещё видел массу бесполезных колунов. Например, такой:
https://youtu.be/kfOlP7rEvmo
Он же будет передавать деревяшке малость смешной импульс, так что понадобится 50 ударов на то, чтобы разрубить деревяшку, которую классический колун возьмёт за один удар.
Лол, он с такой натугой колет идеально ровные чурбаны, что аж смешно становится. Классическим топором такие штуки рубятся одной рукой и чуть ли не в свободном падении.
https://www.youtube.com/watch?v=pdi8-YUgDSY&t=1m54s
Эпический багор, я аж поржал.
Какие комментарии )))
https://youtu.be/tpTgsasA5xM
Ну хоть не из ебонита. Удивительно, как это при "эбоксидке" написано "в общем" вместо классического "вообщем".
Ну да, сбегал поди к знакомому фрезеровщику чтобы не пердолиться. Заказчик всё равно не отличит.
Для тех, наткнулся на этот тред случайно, имеется видео по изготовлению параллелепипеда на токарном станке без сложного пердолинга: https://www.youtube.com/watch?v=IPQ9JwzO_Yo Для этого требуется только движение резца по прямой строго перпендикулярно оси вращения (иначе выйдёт конус или фигурная питушня).
Ага, работать в каске. Хотя если заготовка прилетит в морду, каска не поможет.
Из-за несимметричной установки болванки станок работает, как виброзвонок.
> несимметричной установки
Вспоминается ролик, где дедок точил вазочку из пня с сучками. Там резец ему пару раз чуть в лоб не отлетал.
Заготовку можно попробовать зажать более симметрично, подставив мелкие твёрдые пластинки, а также не повышать обороты без надобности.
https://youtu.be/d43f8rXEd6o
> Think
> PHP
действительно, из чего же еще состоит урл
"GET /api/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1" 404 209 "-" "python-requests/2.23.0"
"GET /laravel/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1" 404 143 "-" "python-requests/2.23.0"
"GET /modules/autoupgrade/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1" 404 143 "-" "python-requests/2.23.0"
"GET /sites/all/libraries/mailchimp/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1" 404 143 "-" "python-requests/2.23.0"
"GET /test/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1" 404 143 "-" "python-requests/2.23.0"
"GET /admin/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1" 404 143 "-" "python-requests/2.23.0"
"GET /composer/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1" 404 143 "-" "python-requests/2.23.0"
"GET /modules/ps_facetedsearch/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1" 404 143 "-" "python-requests/2.23.0"
"GET /payment/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1" 404 143 "-" "python-requests/2.23.0"
"GET /concrete/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1" 404 143 "-" "python-requests/2.23.0"
"GET /wp-content/plugins/dzs-videogallery/class_parts/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1" 404 143 "-" "python-requests/2.23.0"
"GET /accounts/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1" 404 143 "-" "python-requests/2.23.0"
"GET /blog/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1" 404 143 "-" "python-requests/2.23.0"
"GET /system/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1" 404 143 "-" "python-requests/2.23.0"
"GET /modules/gamification/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1" 404 143 "-" "python-requests/2.23.0"
Какой анскилл )))
Плюс против «Питона» я ничего не имею.
Not Invented Here.
Да и стандартные методы работы с массивами в пыхе УГ + можно цепочками методы клепать