• 技术文章 >后端开发 >PHP问题

    php什么是接口

    (*-*)浩(*-*)浩2019-09-18 14:32:13原创1104
    PHP接口

    使用接口(interface),可以指定某个类必须实现哪些方法,但不需要定义这些方法的具体内容。

    接口是通过 interface 关键字来定义的,就像定义一个标准的类一样,但其中定义所有的方法都是空的。

    接口中定义的所有方法都必须是公有,这是接口的特性。(推荐学习:PHP编程从入门到精通

    实现(implements)

    要实现一个接口,使用 implements 操作符。类中必须实现接口中定义的所有方法,否则会报一个致命错误。类可以实现多个接口,用逗号来分隔多个接口的名称。

    Note:

    实现多个接口时,接口中的方法不能有重名。

    Note:

    接口也可以继承,通过使用 extends 操作符。

    Note:

    类要实现接口,必须使用和接口中所定义的方法完全一致的方式。否则会导致致命错误。

    接口实例

    <?php
    
    // 声明一个'iTemplate'接口
    interface iTemplate
    {
        public function setVariable($name, $var);
        public function getHtml($template);
    }
    // 实现接口
    // 下面的写法是正确的
    class Template implements iTemplate
    {
        private $vars = array();
      
        public function setVariable($name, $var)
        {
            $this->vars[$name] = $var;
        }
      
        public function getHtml($template)
        {
            foreach($this->vars as $name => $value) {
                $template = str_replace('{' . $name . '}', $value, $template);
            }
     
            return $template;
        }
    }
    // 下面的写法是错误的,会报错,因为没有实现 getHtml():
    // Fatal error: Class BadTemplate contains 1 abstract methods
    // and must therefore be declared abstract (iTemplate::getHtml)
    class BadTemplate implements iTemplate
    {
        private $vars = array();
        public function setVariable($name, $var)
        {
            $this->vars[$name] = $var;
        }
    }
    ?>

    以上就是php什么是接口的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:php
    上一篇:php什么是构造函数 下一篇:php什么时候使用单例模式
    大前端线上培训班

    相关文章推荐

    • linux升级php方法• php生成pdf文件并下载的方法• php是用c语言写的吗• php访问mysql数据库的方法

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网