Я упаковываю свой код, используя gzdeflate (), после того, как я добавляю addlashes () и записываю его в файл как $ var = ‘MY_RESULT’;
После этого я пытаюсь выполнить его, используя eval (stripslashes (gzinflate ($ var))) и получаю сообщение об ошибке. Предупреждение: gzinflate (): ошибка данных в этой строке. Если я устанавливаю $ var = addlashes (gzdeflate («my_original_code»)), все работает хорошо, но мне нужно поместить дефлированный результат в эту переменную. Так где же моя ошибка? Вот мой код:
<?php
$source = file_get_contents("source.txt");
$gz = addslashes(gzdeflate($source,9));
$a = "<?php \$var='";
$b = "'; eval(gzinflate(stripslashes(\$var)));";
$result = $a.$gz.$b;
$fp = fopen('result.php', 'wb');
fwrite($fp, $result);
fclose($fp);
Вам нужно изменить порядок шагов кодирования при декодировании.
Шаги кодирования:
Ваши текущие шаги декодирования:
Очевидно, что это не сработает. Вам нужно:
Короче вместо stripslashes(gzinflate($var))
, тебе нужно gzinflate(stripslashes($var))
,
eval()
на результат, я боюсь думать, но есть ваша ошибка.]
Других решений пока нет …