建议代表其值的好变量名(php)

时间:2010-05-29 05:24:08

标签: php variables

我认为程序员必须有一些有趣的变量命名约定。我见过许多地方说一些变量名称非常有效,如

常见变量名称

  • $链路
  • $分贝
  • $连接
  • $查询
  • $语句
  • $ SQL
  • $ QRY
  • $输出
  • $结果
  • $列表

所以请为变量提出一些好名字,因为我必须一直写 $x, $y等。如果我想立即在页面上保存某些东西......甚至不相关,那么请建议我好的变量名称

还有一个问题:

=之前和之后的长文件/变量/类/对象名称和标签是否会影响php页面的性能。例如,从db获取一些数据,我用来写下长名称的代码

include_once    "../libs/databaseConnection.class.php";
$objDatabaseConnection      =        new databaseConnection();
$query                      =       some query;
$arrFetchResult             =       $objDatabaseConnection->fetchByAssoc($query);

而不是这个,如果我更改类的名称并删除=之前和之后的选项卡并修改方法(一点点)

include_once "../libs/db.config.php";
$db=new dbClass();
$qry=some query;
$output=$db->fetch($qry,"assoc");

这会影响页面的性能吗?这是我真正的问题。

7 个答案:

答案 0 :(得分:4)

我不知道列表是否有用。

只需考虑一个能够准确描述变量内容的名称。

请务必保持一致,即camelCasePascalCaseunder_scoregluedtogether

另外,不要否定$notLoggedIn之类的内容,因为这会让人感到困惑

if ( ! $notLoggedIn) {
    // user is logged in
}

关于您的更新,空格不应影响性能。它应该在解析阶段被标记化并在字符串之外被忽略。

绝对是微观优化。如果你也非常关心速度,你应该单引号你的字符串没有变量插值。这当然也是一种微观优化。

我永远不会改变这一点,除非极少数情况下这是你申请的瓶颈而且需要解决。

答案 1 :(得分:1)

长名称在解析时会产生微小的影响,甚至不足以证明使用像$ v这样的名称。一个足够长的描述性的名称,但足够短,可以输入很多次,这将节省开发人员周期 - 这些日子比CPU周期更值钱。

答案 2 :(得分:1)

你应该看看:

<强> PHP Coding Standards

答案 3 :(得分:0)

最佳变量的名称是反映变量用途的名称。

可在foreach手册页上找到好的示例。在迭代数组时,我们设置了2个变量$key$value。这是好名字,因为它们描述了变量的含义。您不能将密钥与值混淆。

  

做长文件/变量/类/对象   =之前和之后的名称和标签   影响php页面的表现。

没有

答案 4 :(得分:0)

关于重命名变量是否会影响页面功能的“真正问题”的答案是否定(除非有一些我不理解的关于PHP的荒谬)。变量名对编译器/解释器/执行所写内容的任何内容都没有任何意义。创建足够描述性的变量名以供其他人查看和理解应该是您编写代码时的目标;它不会影响运行时,但它使未来的维护更容易。

提供一个包含所有“好”变量名称的列表是不可能的。亚历克斯提供了一些关于变量命名的一般指针,快速的谷歌搜索可以引导你到很多地方颂扬在一周内查看它们时给出变量名称的优点。使用简洁的名称但描述变量的用途。

答案 5 :(得分:0)

  

更长的变量名会影响PHP的性能吗?

如果你使用更长的变量名,你的PHP文件会增加几个字节,所以PHP解析器需要“解析”一些额外的字节。这只是纳秒的问题。除此之外,性能不受影响。将缩放变量名称缩短为“提升”性能将是完全愚蠢的。

答案 6 :(得分:0)

我建议总是使用相同的短变量名称来表示你大部分时间都在做的事情,例如,如果你写的是大量的:

if ($res = mysql_query($sql)) {
    while ($rst = mysql_fetch_array($res)) {...}
}

没有必要为这些变量使用长而富有表现力的名称!

列表中的变量适用于这些常见任务。

Zend非常好coding standards,主要用于课程。