首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >PHP在每个变量前面有一个符号(美元符号)的目的是什么?

PHP在每个变量前面有一个符号(美元符号)的目的是什么?
EN

Stack Overflow用户
提问于 2010-08-30 04:31:29
回答 3查看 25.5K关注 0票数 18

可能重复:

Why PHP variables start with a $ sign symbol?

我看过其他编程语言,它们中的大多数似乎都没有任何符号来表示某个东西是一个变量。当其他语言的解释器/编译器能够弄清楚没有这样的符号的变量是什么时,为什么PHP解释器需要这样的符号,这有什么原因吗?

这会不会让解释器更快呢?这会让工程师更容易创建解释器吗?是为了让代码更容易阅读吗?还是其他什么原因?

额外的问题:如果有一个很好的理由让一个符号包含一个变量,为什么不是所有的编程语言都有呢?

This是我能找到的最接近的问题,尽管这个问题似乎不清楚,答案从“只是因为”到“这就是为什么它是一个$而不是其他符号”。这条帖子似乎并没有解决美元符号的实际用途。

编辑:从评论中的混乱来看,我的问题肯定表达得很糟糕。为了澄清,我的问题不是“为什么符号在变量的前面是$而不是其他的符号?”,这个问题在我链接的页面上被问到并得到了四个很好的答案。我的问题是“在PHP中为什么在变量前面有符号?在变量前面有符号有什么作用?”

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-08-30 04:42:00

用一个符号来表示变量使得字符串插值变得简单而清晰。Shell、Perl和PHP产生于对快速、简单的字符串操作的需求,包括插值,所以我想使用变量前缀似乎是一个好主意。

即在PHP中:

代码语言:javascript
复制
$var = 'val';
$strVar = "The var is $var";

与典型的字符串格式相比:

代码语言:javascript
复制
var = 'val'
strVal = 'The var is %s' %(var)
票数 18
EN

Stack Overflow用户

发布于 2010-08-30 04:58:51

我认为这只是它的起源。

unix shell和Perl就是例子。

如果你仔细观察PHP,你会发现它和shell有很多相似之处。

因此,您最好在那里解决您的问题:)

票数 1
EN

Stack Overflow用户

发布于 2010-08-30 04:48:37

在php中,你不必在使用它之前设置变量,在其他语言中,你必须在使用它之前声明变量,比如var MyVar = 'my value',或者定义要保存的内容类型。

我不确定,但我认为添加符号的目的是不必声明变量,并让apache知道这是一个变量。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3596474

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档