MUTOgen4eg: во втором, «правильном» варианте у вас записано всего 16 байт. В коде вы не привели функцию countCards(). поэтому сложно судить о том, что там подаётся на вход.
MUTOgen4eg: так вам base64 кодирование нужно? base64_encode(): сначала pack'ом перевести ваше сверхдлинное число в бинарную строку, а её закодировать base64_encode().
Ingernirated: наверное, у вас включен strict mode. В нём обязательно должна быть определена переменная. С несуществующими свойствами объекта такой проблемы нет.