$line){ if(trim($line) === "===BEGIN CRASH DUMP==="){ $start = $num + 1; break; } } if($start === -1){ fwrite(STDERR, "Crashdump encoded data not found in target file" . PHP_EOL); exit(1); } $data = array_slice($lines, $start); array_pop($data); $zlibData = base64_decode(implode("", $data), true); if($zlibData === false){ fwrite(STDERR, "Invalid encoded data in crashdump" . PHP_EOL); exit(1); } $decoded = zlib_decode($zlibData); if($decoded === false){ fwrite(STDERR, "Invalid compressed data in crashdump" . PHP_EOL); exit(1); } file_put_contents($output, json_encode(json_decode($decoded), JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES)); echo "Wrote decoded crashdump to " . realpath($output) . PHP_EOL;