繁体   English   中英

公共函数与CodeIgniter中的函数

[英]Public functions vs Functions in CodeIgniter

在PHP中,在类中声明方法之间有什么区别

public function VS function

例如:

public function contact()
{
    $data['header'] = "Contact";
    $this->load->view('admin/admin_contact', $data);
}

VS

function contact()
{
    $data['header'] = "Contact";
    $this->load->view('admin/admin_contact', $data);
}

使用公共功能功能是更好的做法,为什么?

根据PHP.net

类方法可以定义为public,private或protected。 声明没有任何显式可见性关键字的方法被定义为public

为了获得最佳实践,我建议使用可见性关键字(尤其是在使用更高版本的PHP时)。 它可以防止混淆(就像你现在的那样)并促进编码的标准做法。

使用任何显式可见性关键字声明的方法是最佳实践 它看起来和感觉更好,它不会混淆人们。

  • 大多数PHP5编码约定(例如Zend,Symfony ......)都需要public关键字,所以它很熟悉。
  • 这意味着变量和方法声明使用相同的语法。
  • 它更明确,并迫使开发人员考虑他们的方法可见性。

这两者没有区别。 两者都是一样的。 在codeigniter中,两者具有相同的含义,并且可以使用标准URI标记进行调用,除非在函数名称前面给出“_”,不会调用_fname()

它们是一样的....如果你没有指定可见性方法/函数被声明为public

声明没有任何显式可见性关键字的方法被定义为public

来自这里文档

如果你真的想要最佳实践,你将永远使用公共。 但对于codeigniter框架,如果你声明它是公开的,它就不会发生。 请注意,如果您希望控制器是私有的,则不要使用私有,但您将在控制器名称前使用下划线(_),以使其不可见。

  • 两个声明都是相同的,并且两个函数都可以通过codeigniter中的URI请求获得
  • 要防止用户调用方法,请使用私有或受保护的访问说明符。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM