Fixed wrongly decoded TAR archive headers with PHP 5.5

In PHP 5.5, TAR archive are not correctly handled any more.
This is due to a BC break in `unpack()` function in PHP 5.5.0. Now `a` format code retains trailing `NULL` bytes. We need to use `Z` format code to get the old behavior which is needed here.