2011-04-18 37 views

回答

21

它們是等價的。

$data->{'what * the ! thing'} 

如果轉換純數據數組到對象這有時會發生:如果你想使用可惡的屬性的名稱,如您只需要第二個版本。

但也有雙引號的版本,這使得更多的感覺,當你真正需要的變量屬性名稱(對象基本上是可變的變量):

$data->{"attr$index"} 
+1

是的。如果可能,請避免使用'$ body - > {'head'}。 – Emmerman 2011-04-18 08:30:59

2

我需要創建一個異常屬性名稱類像這樣{'field-name'}。

class myclass 
{ 
    public {'field-name-with-minus-sign'} = "something"; 
} 

Id不起作用。爲什麼?我不想用這樣的東西:

$myclass = new stdClass(); 
$myclass->{'dumb-property-name'} 

因爲我有很多像這樣的屬性。