public function has($key = null)
    {
        if ($key === null) {
            return $this->count() > 0;
        }

        $arr = &$this->getStackByReference($key);

        return is_array($arr) ? array_key_exists($key, $arr) : false;
    }