rybakit / msgpack.php

A pure PHP implementation of the MessagePack serialization format / msgpack.org[PHP]
MIT License
389 stars 18 forks source link

Do you know the folks doing the PHP C module? #28

Closed sodabrew closed 5 years ago

sodabrew commented 5 years ago

Hi! I'm trying to move a PR forward on the msgpack PHP C extension. Are you in touch with msgpack overall project management to help run this down? https://github.com/msgpack/msgpack-php/pull/124

Is the community recommending a move away from the C module and towards this one natively in PHP now?

rybakit commented 5 years ago

Hi @sodabrew. Sorry, I have no relation to the msgpack project and can't help with moving your PR forward :(

Regarding the community recommendations, this library was burn because of various issues and limitations I ran into while using the pecl extension and I tried to address them in my own implementation. Indeed, the official PHP extension seems not maintained anymore, but I'm not aware of any published recommendations regarding moving away from pecl towards my library.

sodabrew commented 5 years ago

Thanks for the background info! So I'll describe my use case and let's see what we can do.

I maintain the php-mecached module. It supports using several different encoders transparently by setting the flags value of the memcached item. The three encoders currently supported are PHP Serialize, IgBinary, and MesssagePack via the msgpack-php C extension.

All three of these are C-based options.

I haven't given much thought to PHP-callback serializers. But I figure that should be pretty straightforward with this module, pass in a variable and get back a binary string?

rybakit commented 5 years ago

But I figure that should be pretty straightforward with this module, pass in a variable and get back a binary string?

Correct, it should work for all data types except objects. To be able to serialize objects you have to implement your own type transformer.

rybakit commented 5 years ago

Closing as the issue is not related to msgpack.php.