2015-09-01 34 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'