PHP 中 ${ } 是什么意思?

用 PHP 有一小段时间了,知道 $username 是代表一个变量,而且很多情况下都是这么写。
今天突然在一个地方看到 "${username}" 这样的写法,瞬间就不明白了。
这个${ }是用来做什么呢,这玩意儿在 google 里不知道该怎么搜,搜不出来呃。

阅读 25k
4 个回答

参考:http://php.net/manual/en/language.var...
为了解决一个模棱两可的问题,用在可能产生歧义的地方,明确告诉编译器如何解释代码。

// DaiJie 的代码中有一种以上的解释,php解释器不知道什么是对的。
$c = array('d'=>'e');
echo "{$c}['d']"; // Array['d']

$c = array('d'=>'e');
echo "${c['d']}"; // e
// null 的代码也有歧义
$var = "hello";
$var_ = "world";
echo "{$var}_ $var_"; //hello_ world

$var = "hello";
$var_ = "world";
echo "{$var_} $var_"; // world world

防止蹿变量的

<?php
$var = "hello";
$var_ = "world";
echo "{$var}_ $var_";

变量名中的花括号的用途是提高优先级。

新手上路,请多包涵

$title=1;
${"title_default_" . $title} = "selected";
echo $title_default_1;
//可变变量的 写法

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题