steffen-wirth
11/2/2015 - 9:01 PM

serializer class

serializer class

class Serializer implements Serializable
{
    
    /**
     * Serialize the given value.
     */ 
    public function serialize($value)
    {
        if (is_resource($value)) {
            throw new InvalidArgumentException(‘A PHP resource cannot be serialized.’);
        }
        try {
            return serialize($value);
        }
        catch (Exception $e) {
            throw new RunTimeException($e->getMessage());
        }
    }
    
    /**
     * Unserialize the given value.
     */ 
    public function unserialize($value)
    {
        if (!is_string($value)) {
            throw new InvalidArgumentException(‘The value to be unserialized must be a string.’);
        }
        if (($unserialized = @unserialize($value)) === false) {
            throw new RunTimeException(‘Unable to unserialize the value ‘ . $value);
        }
        return $unserialized; 
    }    
}