在PHP和其他一些脚本语言中使用$var
语法,而Java和其他语言只能var
。
背后有什么理论吗?它能帮助他们解析吗?如果不是为什么他们会选择在前面增加一个角色?
答案 0 :(得分:68)
它可以防止变量名与语言关键字冲突,并允许它们以字符串形式进行插值。
答案 1 :(得分:9)
我的理论是,即使引入了新的保留字,例如php4 - >,像php这样的脚本语言也需要某种方式来继续运行。 php5得到了补充。由于它是一种脚本语言,任何被捕获为变量名称的网页都不会因为语言的变化而死亡。
这不是编译语言的问题,因为所有内容都转换为二进制文件,语言中的任何更改都不会影响已编译的程序
答案 2 :(得分:8)
因为常量和保留字没有 $ 事物
不要试图比较编程语言的语法......他们是如此不同。 :)
答案 3 :(得分:8)
因为它的根源在于Perl:PHP History
答案 4 :(得分:6)
因为某些语言是丑陋的临时脚本kludges并使用愚蠢的技巧来提醒“解析器”它有工作要做的事实。
其他语言是真正的语言设计工作,使用真正的变量名称而不是丑陋的宏语法...
使用$
的一种相当不错的语言是Perl,但我可能会指出Perl6放弃它。
答案 5 :(得分:1)
这是proposed explanation as to why PHP uses $。它显示了原始脚本的序列,例如awk,它使用$ Perl到PHP。
可能最初用于使语言解析更容易。