What's happening in our world

Home / Blog

Monday 17th April 2017 New V11.1 loaders updated for FreeBSD and ARMhf (Raspberry Pi etc boards)

We updated loaders for FreeBSD and ARMhf platform boards such as Raspberry Pi. New loaders are fully compatible with the latest version 11.1 of SourceGuardian including full PHP 7.1 support. Please download from our loaders page.

Posted on April 17th 2017 at 10:19pm by Alex

Monday 10th April 2017 SourceGuardian 11.1 launched! (a minor version number but big updates)

Version 11.1 introduces encoding for PHP 7.1, updated GUI and other new options. Although it look s like a minor update, in fact it's bigger than usual. We did serious work on refining GUI and adding some new and useful options to the command line version. As usual this update is partly based on comments and suggestions of our users. We were glad to receive comments and suggestions and want to thank you very much for sharing your ideas! We are looking forward to hearing about other suggestions for improving SourceGuardian. Here is a list of all the version 11.1 changes. There are too many changes for a small blog post. Please find a full change log here
· Full support of PHP 7.1 encoding including all the latest language options: nullable types, void functions, class constants visibility, iterable, multi-catch and more.
· New loaders for PHP 7.1, updated loaders for older versions of PHP. Download here
· We fixed some issues with running encoded code on PHP 5.6 and 7.0 

GUI updates

· We fully reworked the files and folders selection dialog.
· We fully reworked files and folders highlighting in the project tree. 
· The project is automatically checked for new and deleted files every time you open the project. This may be turned off/on in Preferences.
· We added a new "Copy unencoded" filter section to Preferences. These filters are checked before any further processing but after the exclusion filters. So, files that match any of "copy unencoded" file masks will be copied to the target folder as-is without encoding. 
· We added tooltips to the main project window, advanced settings and some features on the lock screen to help our new users.
· You may automatically release the current SourceGuardian license directly from the application.  This makes it possible to easier reinstall your copy of SourceGuardian if you need without asking us for the license reset.
· New GUI for SourceGuardian for Mac. 
Read more news about GUI here

Command line encoder updates

· We added automatic registration for command line tools. 
· The command line tools now may be started with GUI license. It's not necessary to specify a path to the GUI encode.lic license file anymore using the -L option. The GUI license will be automatically found if you are starting the command line tools included to GUI installation. 
· The license may be released automatically from for the command line tools as well as from GUI. This makes it possible to easier reinstall your copy of SourceGuardian if you need without asking us for the license reset.
· We added a new -c (--copy) filter option in additon to -f (--file), -t (--template) and -x (--exclude). The new -c (--copy) option may be used to specify the files that will be copied as-is without encoding to the target folder. 
· We updated recursive directory search. 
· Optional directory trimming level may be specified with -r{n} 
Read more news about the command line encoder here

Posted on April 10th 2017 at 11:55pm by Alex
Labels: gui, php 7.1

Wednesday 18th January 2017 Speed test of different versions of PHP

 During the process of building encoders and loaders we at SourceGuardian run a simple test for all the new loaders to quickly check if there are any issues before entering the thorough testing phase especially for new versions. We run the same PHP code both in source and encoded for different versions of PHP and calculate the execution time just for fun. This produces interesting results in fact. The code itself does not matter, it's a rough Pi approximation and you may find it below. For that test we changed the number of iterations up to 10 000 000 to increase the overall execution time and minimize time calculation error. Actual time does not really matter as well as the machine that runs the code, but you can see the obvious difference between versions of PHP! Have fun trying it yourself if you wish!
The code:
function microtime_float()
    list($usec, $sec) = explode(" ", microtime());
    return ((float)$usec + (float)$sec);
$t = microtime_float();
$pi = 4; $top = 4; $bot = 3; $minus = TRUE;
$accuracy = 10000000;
for($i = 0; $i < $accuracy; $i++)
  $pi += ( $minus ? -($top/$bot) : ($top/$bot) );
  $minus = ( $minus ? FALSE : TRUE);
  $bot += 2;
print "Pi ~=: " . $pi . "\n";
$t2 = microtime_float();
print ($t2-$t)."\n";

(we know about the optional argument of microtime() but unfortunately old PHP 1.8.x etc does not!)
Happy coding!
Best Regards,

Posted on January 18th 2017 at 04:08pm
Labels: php speed

Monday 24th October 2016 Update of SourceGuardian - version 11.0.6

- Fixed __DIR__ and __FILE__ constants that were statically compiled when used in initialization expressions in PHP5.6. If you get issues with using __DIR__ or __FILE__ in your PHP 5.6 code, re-encode the files and install the updated loaders.

- Fixed PHP_OS and some other constants were statically compiled for PHP7. If you get issues with using PHP_OS or other constants in your PHP7 code, re-encode your files.

- We updated how empty files are processed. Now empty files are copied to the target folder if it's specified. Empty files are skipped from processing if the target folder is not specified. In either case empty files are not counted as errors anymore. The encoding log will still indicate empty files with [11] code.

- We added the --verbose option to the command line encoder. Options are 0-quiet, 1-print only errors in the log, 2-print standard log. 2 is default. You may also add this option to "Additional Command Line Options" in "Advanced settings" if you want to change the encoding log when using GUI.

- The GUI license generator must correctly handle http:// network paths to the license. In that case the license is created in the target folder under the specified URL path, the http:// and domain name are filtered to build a correct local path to the license.

- Updated loaders for PHP 5.6 and PHP7

- We updated loaders for ARMhf (Raspberry Pi and other boards) and ARMel platforms. Please download new loaders from our web site

We recommend that you update the encoder and re-encode your files if you are encoding for PHP 5.6 or PHP7. Please also update the loaders.


Posted on October 24th 2016 at 07:11am by Alex
Labels: 11

Monday 12th September 2016 Loaders updated for Raspberry Pi (ARMhf) and ARMel

We have added support for PHP7 and updated loaders for ARMhf (Raspberry Pi and other boards) and ARMel platforms. Please download new loaders from our web site or click here to use our online  loader assistant to know the loader you need for your system and how to install it. (The loader assistant assumes ARMhf if ARM platform is detected. If you need loaders for ARMel, please download from our website).  

Posted on September 12th 2016 at 11:09pm by Alexander
Labels: arm, php7, raspberry

Friday 08th July 2016 Bugfix version 11.0.1 released

 If you are using version 11 for PHP7 encoding, please update the encoder and re-encode you files. Automatic update must work and update it up to version 11.0.1. Also please download recent loaders for PHP7 version 11.0.3 from http://sourceguardian.com/loaders/
- Issue with __DIR__ and __FILE__ concatenation fixed for PHP7
- Issue with sg_get_const() etc loader API functions running on 64-bit platforms fixed
- Issue with encoder hangs on $_SERVER variable on WIndows fixed
Updating the encoder and loaders is very recommended.

Posted on July 08th 2016 at 12:32am by Alex
Labels: 11, php7

Monday 04th July 2016 SourceGuardian 11 launched!

We are proud to present SourceGuardian 11 - the most advanced PHP Encoder on the market, complete with a powerful GUI and protection covering the latest versions of PHP including PHP 7.0. You can encode your scripts using Windows, Mac OS X and Linux, all with a powerful GUI or using a command line interface.
Try the 14 days free trial and purchase the full version.
Protected files may run on Windows, Mac OS X, Linux, FreeBSD, embedded Linux ARM and more. For a full list of supported platforms check our loader page
Version 11 introduces encoding for PHP 7.0 and some new options. As usual this update is partly based on comments and suggestions of our users. We were glad to receive comments and suggestions and want to thank you very much for sharing your ideas! We are looking forward to hearing about other suggestions for improving SourceGuardian. Here is a list of recent version 11 changes.


· Full support of PHP 7.0 encoding including the latest language options:
scalar type declarations, return type declarations, new operators, anonymous classes and more

Encoding for PHP 7.0 is fully supporting in version 11 of SourceGuardian. PHP 7.0 introduced new language features and updated bytecode format to support them. Files encoded with SourceGuardian 10.x or older need to be re-encoded with SourceGuardian 11 in order to run protected files under PHP 7.0
· New loaders for PHP 7.0, updated loaders for older versions of PHP

We updated loaders and created new ones for PHP 7.0. Loaders for the following operating systems are available:

· Windows 32-bit (VC6, VC9; VC11 PHP 5.5, 5.6; VC14 PHP 7.0)

· Windows 64-bit (VC9 PHP 5.3,5.4; VC11 PHP 5.5,5.6; VC14 PHP7.0)

· MacOSX (universal binaries, include i386, x86_64)

· Linux (i386, x86_64)

Updated loaders  for the following platforms are coming soon:

· Linux ARM (armel)

· Linux ARM (armhf) including Raspberry Pi

· FreeBSD (i386, x86_64)

We are happy to work with our customers if they need bespoke loaders for other custom operating system. Please contact support@sourceguardian.com if you are interested.

· We removed the @SourceGuardian tag from all the encoded files excepting files encoded with "conjunction" option.

·  Locking to a domain automatically enables www. subdomain and you do not need to specify the www. subdomain on the locking page.

·  The command line tools now return expected exit codes. The encoder returns encoding status after processing a single file. When it is processing multiple files it returns zero in case of running the process and if there are no issues in using the command line options and then you need to check the encoding log for further details. Licgen returns exit code on invalid options or status of the license generation. Sginfo returns exit code on invalid options or status of the encoded file. Please find further details in the user manual. 

·  A built-in file information tool or its command line equivalent now returns estimated memory usage for running the encoded file. This does not include any additional memory requirements of your code. Estimated memory usage also differs for versions of PHP as lengths of bytecode may vary 

·  A new sg_loader_version() function returns version of the loader. As well as any other loader functions it's available only when the loader is loaded into PHP, i.e. you may use it from your protected files or if the loader is installed to extension_dir and php.ini. 


Posted on July 04th 2016 at 04:33pm by Alex
Labels: 11, php7

Sunday 26th June 2016 Need to encode Symfony 2?

Do you need to encode your Symfony 2 project? Please find an article on our website we published about it. 

Posted on June 26th 2016 at 09:50am by Alex
Labels: symfony

Thursday 19th March 2015 Loaders updated to fix issues with Laravel and traits.

Today we updated loaders for OSX, Linux and Windows (main platforms that we support). Loaders for other supported platforms will be updated during the next major update or please contact us and we can update them sooner. 
This update fixes some issues with traits in PHP 5.4, 5.5 and 5.6 and as a result it fixes issues with Laravel 5 encoded files. As for Laravel, you may encode all the *.php files in the app, config, database etc folders. It's no reason to encode any vendor files as they are open source. Also do NOT encode resources and particularly views as they are not pure PHP regardless then have *.php file extensions too. 
If you are not sure how to install loaders or which one to choose, please use our online and free loader assistant

Posted on March 19th 2015 at 08:59pm by Alex
Labels: 5.4, 5.5, 5.6, laravel, traits

Thursday 06th November 2014 SourceGuardian 10 compatibility fix for old versions of Mac OS X

We have released a minor update of SourceGuardian 10 for OSX to fix issues with running  the encoder on old versions of OSX. If you had the following error message "dyld: lazy symbol binding failed: Symbol not found: ___strlcpy_chk" or similar in the encoding log window when encoding files for PHP 5.5 or 5.6, please download and install an updated version from your user account.  

Posted on November 06th 2014 at 09:07pm by Alex
Page 1 2 3 4 5 6 7 >>


Account Login:

login Forgotten Password?
Connect with us
facebook linkedin twitter rss
© Copyright 2002 - 2017 SourceGuardian Limited
Privacy Policy l Terms & Conditions l Company Info l Contact us l Sitemap l PHP Weekly News