Лидеры
Популярный контент
Показан контент с высокой репутацией 29.10.2022 в Комментарии блога
-
В настоящий момент с точностью 100% известно, что в ioncube loader 12 присутствует баг. И вызывает его всего одна строчка абсолютно валидного кода. Если вы после этой строчки (в любом месте) сделаете код (любые операции с переменными-строками вызывают строки с "нулями"): $x=''; echo $x; то получите вывод тех самых битовых "нулей" вместо пустой строки. Т.е. неработоспособную программу (для теста) достаточно написать из двух-трех строк. Баг возникает не в движке PHP, а именно в ioncube loader 12, в одной из ее функций, которая в предыдущих версиях (10, 11) работала исправно (т.е. на протяжении 6 лет), но дала сбой в 12-й версии. К сожалению компания ioncube крайне закрыта в плане общения и информации, обсуждения и подтверждения багов и т.д. Вы даже через поиск не найдете форум самой ioncube , хотя он был раньше, и на нем обсуждались проблемы ioncube . Они просто удалили форум как "ненужный" элемент поддержки пользователей и спокойно сообщили об этом: https://blog.ioncube.com/2022/04/01/what-happened-to-the-forum/ А то мало ли что... Станут пользователи публично сообщать на форуме о найденных багах. Раньше писали же. Ну разве это нужно компании?1 балл
-
От аномального поведения невозможно избавиться. удаляем NULL байты, но вместо удаления либо появляются новые, либо удаляются только конечные и начальные. Чудеса! Точнее, это баги. Пробовал так бороться: $pattern_for_tags = ''; $pattern_for_tags = str_replace("\0", '', $pattern_for_tags); echo "\nЭто тоже после удаления NULL-ей pattern_for_tags\n"; echo $pattern_for_tags; $pattern_for_tags = trim($pattern_for_tags); echo "\nЭто тоже после TRIM pattern_for_tags\n"; echo $pattern_for_tags; Но, как говорится фиг вам. php с кубом стоят на своем. видимо, без покупки енкодера 12 удивительный баг не побороть. Хороший маркетинговый ход у разработчиков ионкуба. Создать баг в новом loader-е, для исправления которого нужно купить новый энкодер 12-й версии за $300. И то, если его еще продадут вам. Разработчик то в Англии. Видать, с продажами энкодера 12-го совсем плохо. Да и зачем он нужен то? Поддержки php 8 в нем нет и не будет. А кому нужна поддержка 8.1, собственно, для которой он и сделан? И, не факт, что применение 12-го энкодера позволит решить проблему. Это как лотерея. Может быть, что это неустранимый баг 12-й версии ioncube loader-а.1 балл
-
PHP Warning: [obfuscated](): Null byte in regex in вот такая ошибка движка PHP появляется при смене ioncube loader на 12-ю версию. сопровождаться может также 503-й ошибкой сервера и т.д. на деле нет никаких null byte в regex. Речь про исходный код и про переменные в процессе выполнения. Специально смотрел с отладкой. Чистой воды баг от ионкуба. Если в журнале ошибок опенкарт увидите вышеприведенную ошибку (Null byte in regex), то смотрите версию ионкуба. через phpinfo(). Ее генерирует именно 12-й ионкуб. Версию ioncube loader меняет хостер на общем хостинге. Релиз 12-й ioncube loader стартовал в середине августа 2022-го. Т.е. пока крайне сырая версия, но некоторые хостеры поспешили уже перейти с 11-й на 12-ю. Хотя обычно дают устаканиться сырому продукту, т.е. дожидаются когда массовые баги отловят в первые несколько месяцев. Месяц-два - это не срок чтобы такого рода продукт перестал быть сырым. Пользователям VDS автоматический переход на 12-ю не грозит. Не возникает проблем на любой версии PHP от 5.6 до 7.4 включительно с ioncube loader 10-й или 11-й веток. Многие хостеры дают возможность выбора версии ioncube loader. Во избежание проблем выбирайте 10-ю или 11-ю версию. По идее компания ioncube старается обеспечить обратную совместимость программ (и энкодеров более ранних версий) со всеми версиями ioncube loader. Но когда это не получается у компании ioncube , то она предлагает перекодировать программы новым энкодером, т.е. энкодером 12-й версии чтобы не было проблем с ioncube loader 12-й версии. Так компания ioncube видит работу над устранением багов, порожденных самой же компанией ioncube. Чтобы устранить баг компания ioncube предлагает купить 12-й энкодер.1 балл