为什么php不支持连字符?

时间:2015-10-24 20:48:11

标签: php

我正在浏览一个我的GitHub项目 在此期间,我发现hp确实支持变量名中的连字符/短划线( - )。

 $var-a=2;

任何人都可以告诉我原因吗? 这是因为它是算术运算符吗? 他们的任何其他符号是否不受php支持?

3 个答案:

答案 0 :(得分:3)

  

变量名遵循与PHP中其他标签相同的规则。一个有效的   变量名以字母或下划线开头,后跟任意名称   字母,数字或下划线的数量。作为正则表达式,   这样表达:   '[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'

http://php.net/manual/en/language.variables.basics.php

答案 1 :(得分:3)

这是因为连字符与减号相同。

我们采取一种方案:

<?php
define('name', 2);
$var = 5;

# Now when you write those combined.
$var-name; # This is actually $var minus name which is a constant.

# Same format as $var1-$var2. Except for this case there is a constant in place of $var2.
?>

这是变量中没有连字符的主要原因。

答案 2 :(得分:0)

  

使用命名约定的原因(与允许程序员选择任何字符序列相反)包括以下内容:

     
      
  • 减少阅读和理解源代码所需的工作量
  •   
  • 使代码审查能够专注于更重要的问题,而不是争论语法和命名标准。
  •   
  • 启用代码质量审核工具,使其报告主要集中在语法和样式首选项以外的重要问题上。
  •   
  • 增强源代码外观(例如,通过禁用过长的名称或不清楚的缩写)。
  •   

Wikipedia: Naming Conventions - Programming