如何在PHP类中使用此函数?

时间:2011-03-25 12:29:54

标签: php serialization gzip

class io_dz {
    /**
     * Compress
     */
    public static function Set($Data) {
        if ($Data) {
            $Out = addslashes(gzcompress(serialize($Data), 9));
        } else {
            $Out = FALSE;
        }

        return $Out;
    }

    /**
     * Decompress
     */
    public static function Get($Data) {
        if ($Data) {
            $Out = unserialize(gzuncompress(stripslashes($Data)));
        } else {
            $Out = FALSE;
        }
        return $Out;
    }
}

它是序列化函数之前的简单压缩。我如何调用此函数并在$data上使用它 我目前有:

$dataCompressor = new $io_dz();
$cdata = $dataCompressor->Set($data);

但它似乎没有用,任何帮助都会受到赞赏!

谢谢!

2 个答案:

答案 0 :(得分:3)

$cdata = $dataCompressor::Set($data);

您需要::,因为您将它们设为静态。如果它们不是静态的并且只是公共函数,那么它将是->

答案 1 :(得分:3)

您将方法声明为静态,您不需要实例化对象来访问它们。 仅尝试:

$cdata = io_dz::Set($data);

如果您需要有关静态方法/属性的更多信息,可以查看PHP手册,其中包含一些易于理解的示例:http://php.net/manual/en/language.oop5.static.php