美文网首页
把一个PHP对象当成数组来访问

把一个PHP对象当成数组来访问

作者: 鱼落于天 | 来源:发表于2019-02-19 11:04 被阅读0次

    PHP预定义接口之 ArrayAccess(数组访问式)

    一个实现了这个接口的类就可以做到了

    class FacadeCompany implements ArrayAccess
    {
       private  $data;
    
        /**
         * Whether a offset exists
         * @link https://php.net/manual/en/arrayaccess.offsetexists.php
         * @param mixed $offset <p>
         * An offset to check for.
         * </p>
         * @return boolean true on success or false on failure.
         * </p>
         * <p>
         * The return value will be casted to boolean if non-boolean was returned.
         * @since 5.0.0
         */
        public function offsetExists($offset)
        {
            // TODO: Implement offsetExists() method.
            return isset($this->data[$offset]);
        }
    
        /**
         * Offset to retrieve
         * @link https://php.net/manual/en/arrayaccess.offsetget.php
         * @param mixed $offset <p>
         * The offset to retrieve.
         * </p>
         * @return mixed Can return all value types.
         * @since 5.0.0
         */
        public function offsetGet($offset)
        {
            // TODO: Implement offsetGet() method.
            return $this->data[$offset];
        }
    
        /**
         * Offset to set
         * @link https://php.net/manual/en/arrayaccess.offsetset.php
         * @param mixed $offset <p>
         * The offset to assign the value to.
         * </p>
         * @param mixed $value <p>
         * The value to set.
         * </p>
         * @return void
         * @since 5.0.0
         */
        public function offsetSet($offset, $value)
        {
            // TODO: Implement offsetSet() method.
            $this->data[$offset] = $value;
        }
    
        /**
         * Offset to unset
         * @link https://php.net/manual/en/arrayaccess.offsetunset.php
         * @param mixed $offset <p>
         * The offset to unset.
         * </p>
         * @return void
         * @since 5.0.0
         */
        public function offsetUnset($offset)
        {
            // TODO: Implement offsetUnset() method.
            unset($this->data[$offset]);
        }
    }
    

    相关文章

      网友评论

          本文标题:把一个PHP对象当成数组来访问

          本文链接:https://www.haomeiwen.com/subject/wbjxyqtx.html