命名包含多个单词的变量的最佳方法是什么?经过CakePHP forge中提供的大量项目之后,我注意到人们使用camelCase,下划线或camelCase来获取发送到视图的数据的变量和下划线。
最后一个例子是:
$activeSites = $this->Site->find('all',array('conditions'=>array('Site.active' => '1'), 'recursive' => -1));
$this->controller->set('active_sites', activeSites);
答案 0 :(得分:7)
根据CakePHP本身(http://book.cakephp.org/view/509/Coding-Standards#Variables-609)使用的命名约定,变量以下列方式命名:
普通变量应以小写字母开头,如果有多个单词,则应以camelBack编写。
答案 1 :(得分:5)
正如大多数人会告诉你的那样,除了要保持一致之外,没有“最好的方法”来命名变量。确定您最喜欢的命名约定,并坚持下去。如果您继续执行项目,请保留已存在的命名约定。这就是我可以给你的所有建议。
答案 2 :(得分:1)
对此没有正确或错误的答案。我通常将其命名为:
$active_sites = $this->Site->find('all',array('conditions'=>array('Site.active' => '1'), 'recursive' => -1));
$this->controller->set('active_sites', $active_sites);
我认为任何方式都可以,但是你的例子显示视图中的变量和控制器不一样。通过在整个过程中采用$ active_sites或$ activeSite可以避免这种情况。
(实际上过了一段时间,我开始到处使用下划线。)
答案 3 :(得分:1)
Cakephp创始人使用camelCase风格
答案 4 :(得分:1)
变量名称应尽可能具有描述性,但也应尽可能短。普通变量应该以小写字母开头,并且应该用camelBack编写?在多个单词的情况下。包含对象的变量应以大写字母开头,并以某种方式与该类关联,该变量是其对象。例如:
<?php
$user = 'John';
$users = array('John', 'Hans', 'Arne');
$Dispatcher = new Dispatcher();
?>
答案 5 :(得分:0)
通常,对于不区分大小写的标签,您只使用下划线,并且只使用小写/大写。传递时,可以以区分大小写的方式处理它们。
不区分大小写的示例:
答案 6 :(得分:0)
cakePHP 它应该是 camelCase 。