2015-09-01 33 views
2

我很好奇如何到达包含空格或特殊字符的变量变量。如何到达具有空格的变量变量?

有没有办法做到?

<?php 
$first_day = "monday"; 
$$first_day = "first day of the week"; 
echo $monday." <br />"; 
$days = 'saturday sunday'; 
$$days = 'days of the weekend'; 
// how to echo $days of the weekend ??? 
print_r(get_defined_vars()); 
+8

你也可以使用'$ {“变量名,你不应该摆在首位有”}'访问它。 – mario

+1

是的,我100%确定有更好的方法。 – AbraCadaver

+0

@mario能否请你添加你的评论作为答案。有用。谢谢你的讽刺,这只是好奇心,不是我需要在项目中使用它。 – motto

回答

2

按照PHP docs

一个有效的变量名以字母或下划线开始,后面跟上任意数量的字母,数字或下划线。为正则表达式,这将被表述为: '[A-ZA-Z_ \ x7f- \ XFF] [A-ZA-Z0-9_ \ x7f- \ XFF] *'

即,可变严格来说,包含空格或特殊字符的名称不是有效的变量名称。

话虽这么说,@马里奥的评论提供了解决方法:

echo ${'saturday sunday'}; // echoes 'days of the weekend'