假设我有一个变量$test
,定义如下:$test = 'cheese'
我想要输出cheesey
,可以这样实现:
echo $test . 'y'
但我更倾向于简化代码,使其更像这样(但这种写法是无效的):
echo "$testy"
有没有一种方法可以使变量中的y
被视为与变量本身分开处理?
echo "{$test}y";
在字符串中直接插值变量时,您可以使用大括号来消除歧义。
此外,这种方法不适用于单引号。因此:
echo '{$test}y';
将输出
{$test}y
"foo{implode(',', [abc])}bar"
。 - velopecho "like so: $var";
。 - Jochem Kuijpers例子:
$test = "chees";
"${test}y";
俗气的
这正是您想要的。
$bucket = '$node->' . $fieldname . "['und'][0]['value'] = " . '$form_state' . "['values']['" . $fieldname . "']";
print $bucket;
产生:
$node->mindd_2_study_status['und'][0]['value'] = $form_state['values']
['mindd_2_study_status']