Skip to content

jqr/php-serialize

Folders and files

NameName
Last commit message
Last commit date

Latest commit

68c0b6f · Mar 2, 2024

History

50 Commits
Mar 2, 2024
Mar 2, 2024
Jun 28, 2017
Mar 2, 2024
Jun 28, 2017
Jun 28, 2017
Jun 29, 2017
Jun 29, 2017
Jan 6, 2013
Feb 19, 2020

Repository files navigation

Ruby PHP Serializer

This module provides two methods: PHP.serialize and PHP.unserialize, both of which should be compatible with the similarly named functions in PHP.

Installing

In your Gemfile:

gem "php-serialize"

Usage

PHP.serialize({'foo' => 'bar'})               #=> "a:1:{s:3:\"foo\";s:3:\"bar\";}"
PHP.unserialize('a:1:{s:3:"foo";s:3:"bar";}') #=> {"foo"=>"bar"}

PHP.unserialize can also read PHP sessions, which are collections of named serialized objects. These can be reserialized using PHP.serialize_session, which has the same semantics as PHP.serialize, but which only supports Hash and associative Arrays for the root object.

See http://php.net/serialize and http://php.net/unserialize for details on the PHP side of all this.

Acknowledgements

  • TJ Vanderpoel, initial PHP serialized session support.
  • Philip Hallstrom, fix for self-generated Structs on unserialization.
  • Edward Speyer, fix for assoc serialization in nested structures.

Author: Thomas Hurst [email protected], http://hur.st/