Можно ли конвертировать байт-код HHVM в PHP?
Что-то вроде этого:
Pseudo-main at 0
maxStackCells: 1
numLocals: 0
numIterators: 0
// line 2
0: String "123"5: Print
6: PopC
7: Int 1
16: RetC
Pseudo-main at 0
maxStackCells: 1
numLocals: 0
numIterators: 0
превращается в
<?php
echo "123";
?>
Да, это возможно, как вы указали в своем примере. Репозиторий байт-кода на самом деле содержит гораздо больше информации, чем вы видите только в дампе байт-кода — в нем много метаданных, включая имена переменных, имена функций и даже комментарии. Если бы вы были достаточно полны решимости, вы могли бы восстановить что-то довольно близкое к исходному исходному коду.
Но сейчас единственный способ сделать это вручную, который требует глубокого знакомства с форматом байт-кода. Это не жесткий, формат довольно хорошо задокументирован, просто неясен. Вы могли бы абсолютно написать инструмент для автоматизации этого процесса, хотя никто еще не удосужился сделать это.
Других решений пока нет …