PHP 解码器文档
适用于 PHP 的 ionCube 解码器 & SourceGuardian 解码器——私密、离线、适合团队。可使用图形界面(GUI)或命令行(CLI)。
一览
- 离线且私密 —— 你的代码永不离开你的设备。
- 两种工作方式 —— 图形界面 简单易用,CLI 便于自动化。
- 适合批处理 —— 可解码文件夹、在 CI 中自动化,并获得日志与校验和。
- 可读输出 —— 在可行处重建符号表并移除常见混淆层。
- 跨平台 —— Windows 与 Linux(64 位)。
- 面向团队 —— 适用于代理机构与内部团队的实用流程。
支持的版本
| 引擎 | 版本 |
|---|---|
| ionCube Loader | 10–14 |
| SourceGuardian | 11–15 |
| PHP | 5.6–8.3 |
目录
快速开始
UnZend 在你的机器上完全离线运行。可先用 GUI 获得引导式体验,或使用 CLI 进行脚本化。先验证环境,再解码一个文件和一个小型文件夹。
1)验证安装
unzend --version
```
unzend --help
2)解码单个文件(CLI,ionCube)
unzend decode --engine ioncube \
```
--input /path/to/locked.php
--out ./decoded/
3)解码文件夹(CLI,递归)
将 --input 指向一个目录。UnZend 会处理受支持的文件,并在 --out 中保留相对结构。
unzend decode --engine sourceguardian \
```
--input ./project-locked/
--out ./project-decoded/
安装
Windows(64 位)
- 运行安装程序,或将提供的压缩包解压到你选择的位置。
- 打开 Windows Terminal 或 PowerShell。
- 可选:将安装目录添加到
PATH环境变量以便全局访问。 - 使用
unzend --version验证。
Linux(64 位)
- 将压缩包解压到合适路径(例如
/opt/unzend或你的主目录)。 - 在
~/.bashrc或~/.zshrc中把unzend可执行文件所在目录加入PATH。 - 确保可执行权限:
chmod +x unzend。 - 使用
unzend --version验证。
注意:根据你的计划,首次运行时可能会提示激活。请按照屏幕指引或购买后收到的欢迎邮件操作。
系统要求
- Windows 或 Linux(64 位)
- 现代 CPU;建议 8 GB 内存
- 为解码输出与日志预留足够磁盘空间
- 在本机完全离线运行
图形界面(GUI)
无需编程经验。GUI 允许你启动任务、选择文件或文件夹、选择解码引擎、设置输出位置,并查看结果与日志——全部在本机离线完成。
开始新任务
- 打开 UnZend,选择 New Decode(新建解码)。
- 选择引擎:ionCube 或 SourceGuardian。
- 将输入设置为文件或文件夹。
- 设置输出目录(UnZend 会保留结构)。
- 可选:启用日志与校验和。
- 点击 Start 开始运行。
监控与查看
- 通过文件计数实时查看进度。
- 打开 Job Log 查看汇总、警告以及被跳过的文件。
- 使用 Open Output 跳转到解码后的文件夹。
- 如需不同设置,可运行 New Job。
提示:对于混合项目(同时包含 ionCube 与 SourceGuardian),请按引擎分别运行任务。
CLI 参考
UnZend 对 CLI 友好优先。运行 unzend --help 查看完整命令与参数。下面展示常见用法。
解码单个文件
unzend decode --engine ioncube \
```
--input /path/locked.php
--out ./decoded/
“`
解码文件夹
unzend decode --engine sourceguardian \
```
--input ./locked-src/
--out ./decoded-src/
“`
试运行与日志(推荐)
在进行大型任务前,先快速试跑并检查日志。使用 --help 中的日志选项以记录摘要与校验和。
工作流与 CI
UnZend 专为可重复的工程流程而设计。以下示例展示常见的自动化模式。
简单 Bash 脚本
#!/usr/bin/env bash
```
set -euo pipefail
INPUT=${1:-./locked}
OUTPUT=${2:-./decoded}
# 预览
unzend --version
# 解码
unzend decode --engine ioncube --input "$INPUT" --out "$OUTPUT"
# 基本检查
php -l $(find "$OUTPUT" -type f -name '*.php') | tee decode-php-lint.log
“`
GitHub Actions(示例)
name: 使用 UnZend 解码
```
on: [workflow_dispatch]
jobs:
decode:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: 安装 PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.2'
- name: 运行 UnZend
run: |
unzend --version
unzend decode --engine ioncube
--input ./locked
--out ./decoded
- name: Lint 已解码的 PHP
run: |
find ./decoded -name "*.php" -print0 | xargs -0 -n1 php -l
“`
可读输出
- 在可行处重建符号表,恢复对开发者友好的命名。
- 移除常见的混淆层,便于长期维护。
- 保留项目结构,减少差异噪声。
- 生成日志与校验和以便审计。
日志与校验和
- 任务摘要:处理、解码与跳过文件的计数。
- 警告与原因:无法解码的文件说明(如版本不受支持)。
- 校验和:可选哈希,用于校验输入与输出集合的完整性。
- 存储:日志保存在输出旁,或保存到你指定的自定义路径。
性能提示
- 输入与输出目录都使用本地 SSD。
- 从输入路径中排除大型非 PHP 目录。
- 先用小样本验证设置,再进行全量运行。
- 保持操作系统最新;确保有足够可用磁盘空间用于输出与日志。
安全与隐私
UnZend 在你的本机运行。你的代码保留在设备上,任务离线执行。请在你自己的系统中查看日志,并将输出存放到符合团队政策的位置。
- 仅本地:无需上传源代码即可进行解码。
- 保留项目结构:保持变更可审查、可审计。
- 团队工作流:将日志与输出一并保存,以满足内部审计需求。
法律与可接受使用
解码前请阅读
仅在你拥有软件或获得所有者书面许可以进行恢复时使用 UnZend 进行解码。你有责任遵守版权法及所有当地法规。
许可与更新
- 包含 UnZend v3.x 的软件许可(设备数量与更新期限取决于方案)。
- 购买后提供文档与快速入门指南。
- 由构建该解码器的工程师提供电子邮件支持。
购买与支付
UnZend 仅接受加密货币支付。选择方案后,结账页面会显示分步支付说明。
故障排除
常见问题
- 不受支持的加载器或 PHP 版本:请查看上面的 支持的版本 表。
- 权限被拒绝:确保输出目录可写且二进制文件可执行。
- 引擎混用:当项目同时包含 ionCube 与 SourceGuardian 时,请分别运行或正确设置
--engine。 - PHP 语法警告:对解码后的文件运行
php -l,并修复项目特定问题。
自检步骤
- 确认你的下载与预期校验和匹配(若提供)。
- 在完整批量前先对小样本运行。
- 检查日志中的跳过文件及原因。
- 确保你仅解码自己拥有或已获许可的软件。
常见问题
使用 UnZend 需要编程知识吗?
不需要。UnZend 包含图形界面(GUI),无需输入任何命令即可引导你完成解码。
- 使用 GUI 你可以:选择 ionCube 或 SourceGuardian,选择文件或文件夹作为输入,设置输出目录,启用日志/校验和并启动任务。界面显示进度与结果,你也可以直接打开输出目录。
- 面向高级用户:命令行界面(CLI)与 GUI 一致,非常适合自动化脚本与 CI 流水线。
如果你愿意,可以先用 GUI 验证设置,再将等价的 CLI 命令复制到脚本中,实现可重复的工作流。
UnZend 是否离线运行?
是的。UnZend 完全在你的机器上运行。你的代码保持私密。
支持哪些平台?
Windows 和 Linux(64 位)。
支持哪些 PHP 版本?
PHP 5.6 至 8.3。
如何支付?
仅支持加密货币。结账时会提供分步说明。
在哪里了解 PHP 环境?
请参阅 PHP 官方网站,获取与解码项目相关的版本信息与环境细节。
支持
你的购买包含文档、快速入门指南,以及由负责该解码器的工程师提供的电子邮件支持。请使用结账后提供的联系方法,或我们网站上的联系表单。
“`