<?php
/**
* PHP Application Packer (PackApp.php)
*
* The usage sample
*
* @package Packer
* @author Vallo Reima
* @copyright (C)2015
*/
$ver = '5.4'; /* required PHP */
if (version_compare(PHP_VERSION, $ver, '<')) {
die("PHP $ver+ version is required");
} else {
error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', true);
ini_set('log_errors', false);
}
require('PackApp.php'); // main class, loads the others if needed
$old = 'tests.zip'; // source zipped
$new = 'tests_pkd'; // destination folder
/* js and php obfuscation; maximum replacement of the PHP identifiers except 'vv' identifier; defined constants can be case-insensitive */
$obj = new PackApp(3, ['ids' => 'VdHFTC', 'exi' => ['vv']]); // instantiate
$rlt = $obj->Pack($old, $new, true); // pack the source and get result data; replace existing data
header('Content-Type: text/html; charset=utf-8');
if (is_string($rlt['factor'])) {
echo $rlt['factor']; // switch to setup
} else {
$r = $rlt['code'] == 'ok' ? 'string' : 'prompt'; // either protocol or message
echo (str_replace(["\t", "\n"], [' ', '<br>'], $rlt[$r])); // display with html
}
if ($rlt['code'] == 'ok') {//success
file_put_contents(pathinfo(__FILE__, PATHINFO_FILENAME) . '.txt', $rlt['string']); // save the protocol
}
|