maybe_unserialize

The timeline below displays how wordpress function maybe_unserialize has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

WordPress Version: 6.1

/**
 * Unserializes data only if it was serialized.
 *
 * @since 2.0.0
 *
 * @param string $data Data that might be unserialized.
 * @return mixed Unserialized data can be any type.
 */
function maybe_unserialize($data)
{
    if (is_serialized($data)) {
        // Don't attempt to unserialize data that wasn't serialized going in.
        return @unserialize(trim($data));
    }
    return $data;
}

WordPress Version: 5.5

/**
 * Unserialize data only if it was serialized.
 *
 * @since 2.0.0
 *
 * @param string $data Data that might be unserialized.
 * @return mixed Unserialized data can be any type.
 */
function maybe_unserialize($data)
{
    if (is_serialized($data)) {
        // Don't attempt to unserialize data that wasn't serialized going in.
        return @unserialize(trim($data));
    }
    return $data;
}

WordPress Version: 5.4

/**
 * Unserialize value only if it was serialized.
 *
 * @since 2.0.0
 *
 * @param string $original Maybe unserialized original, if is needed.
 * @return mixed Unserialized data can be any type.
 */
function maybe_unserialize($original)
{
    if (is_serialized($original)) {
        // Don't attempt to unserialize data that wasn't serialized going in.
        return @unserialize($original);
    }
    return $original;
}

WordPress Version: 3.7

/**
 * Unserialize value only if it was serialized.
 *
 * @since 2.0.0
 *
 * @param string $original Maybe unserialized original, if is needed.
 * @return mixed Unserialized data can be any type.
 */
function maybe_unserialize($original)
{
    if (is_serialized($original)) {
        // don't attempt to unserialize data that wasn't serialized going in
        return @unserialize($original);
    }
    return $original;
}