Changes in Zend Guard from version 5.5 to 6.0

  • Full support for PHP 5.4
  • Dropped Support for PHP 5.2 ( Guard 5.5 should be used )

Known issues and Limitations

General
  • Encoding/obfuscation for PHP 5.4 is not compatible with PHP 5.3 and earlier releases, and vice versa. That is, a file encoded to run on PHP 5.3 will not be loaded on PHP 5.4 and vice versa. Workaround: Encode your application separately to run on PHP 5.3 and PHP 5.4.
Encoding
  • Relative names do not work with --ignore and --exclude-file
  • Using inexact file names (different cases, / instead of \\, or not full paths) does not work with --ignore and --exclude-file (Windows only)
  • "Work only with encoded files" option does not work if it is not applied for all files
  • Extending stdClass gives a blank output when a file is encoded
Obfuscation
  • Using mbstring.func_overload with obfuscation requires exporting functions that are overloaded.
Class Obfuscation
  • Implementing PHP interfaces (such as Iterator) requires exporting interface methods
  • Autoloading does not work for obfuscated classes (due to different class names)
  • Obfuscating class and function names can break any code that accesses a function by string, such as calling a variable function like $func(), or calling a PHP internal function to access a class/function as a variable, such as call_user_func($func), etc.
  • --export-php may not automatically export some SPL iterator classes

Installation Instructions

Windows

Double-click on the self-extracting archive, and follow the instructions in the automated installation wizard.

Linux
  • Extract the downloaded tar.gz file: tar xzvf filename.tar.gz
  • As soon as the extraction is done, run the extracted binary (./ZendGuard.bin) and follow the instructions in the installation wizard.
Mac
  • Extract the downloaded .dmg file by double clicking on it.
  • Double click on the archive directory in order to start the Zend guard installation wizard and follow the instructions  in the installation wizard.
Standalone Guard Loader
  • Download from www.zend.com and follow readme inside the package
Guard Loader for Zend Server 6.0.1
  • Download from www.zend.com
  • Windows
    • Run the ZendGuardLoader_for_PHP54.exe setup to add loader to your PHP54 Zend Server
  • Linux
    • Install php-5.4-loader-zend-server 
    • vim /usr/local/zend/etc/conf.d/loader.ini
    • uncomment the line: zend_extension_manager.dir.loader=/usr/local/zend/lib/loader
  • Mac
    • Download ZendGuardLoader-70429-PHP-5.4-darwin10.7-x86_64.zip, unzip, and follow readme instructions

Known issue for all above: Zend Guard loader will not be displayed in Zend Server UI

System Requirements

  • Linux x86
  • Linux x86-64 (only with 32 bit libraries)
  • Windows x86 XP / 7 / 2008
  • Mac OS X 10.8
  • PHP Compatibility - Supported PHP versions are 5.3 and 5.4