首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >{$var} --这是什么意思?

{$var} --这是什么意思?
EN

Stack Overflow用户
提问于 2013-05-07 06:04:33
回答 1查看 26.9K关注 0票数 25

我遇到过这样的访问/更改变量的需求:

代码语言:javascript
复制
$this->{$var}

上下文包含CI datamapper获取规则。我似乎找不到这个语法的实际用途。在这种情况下,{的作用是什么?

为什么你不能直接使用:

代码语言:javascript
复制
$this->var
EN

回答 1

Stack Overflow用户

发布于 2013-05-07 06:42:52

首先,$this->{$var}$this->var是两个截然不同的东西。后者将请求var类变量,而另一个将请求$var字符串中包含的变量的名称。如果$var是字符串'foo',那么它将请求$this->foo,依此类推。

这对于动态编程很有用(当您只在运行时知道变量的名称时)。但是,字符串上下文中的经典{}表示法非常强大,特别是当您有奇怪的变量名时:

代码语言:javascript
复制
${'y - x'} = 'Ok';
$var = 'y - x';
echo ${$var};  

即使变量名y - x由于空格和-字符而无效,也会输出Ok

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

https://stackoverflow.com/questions/16408037

复制
相关文章

相似问题

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