2017-09-05 127 views
-1

如果我將$ cat_id用{}包裹在[href]屬性值中,是否可以?或者我應該,首先?還是僅僅因爲它不是一個字符串? - 因此,我們可以選擇做或不做...使用大括號包裝PHP變量

echo "<li><a href='category.php?cat=$cat_id'>{$cat_title}</a></li>"; 

雖然,這是事情......代碼工作得很好。我只是想學習何時用大括號包裝PHP變量,何時不包含,何時嵌入其他語言。

+1

閱讀[PHP字符串](http://php.net/language.types.string)。在大括號中包含變量不是必需的,但有時需要消除[變量解析]的歧義(http://php.net/manual/en/language.types.string.php#language.types.string.parsing)在[雙引號](http://php.net/manual/en/language.types.string.php#language.types.string.syntax.double)中使用[heredoc語法](http:/ /php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc)。大括號在單引號和「nowdoc」字符串中沒有任何特殊含義。 – axiac

+0

我會的。謝謝。 – Sky7ure

回答

1

如果我將$ cat_id用{}包裹在[href]屬性值中,是否可以?

它與HTML標籤無關。 PHP不關心它是否爲HTML,XML,有效或無效。所有它關心它是有效的字符串 - 它是,所以是的。在那裏使用{}是完全正確的。

Docs say

如果遇到美元符號($),解析器會貪婪地取爲 太多令牌,儘可能形成一個有效的變量名。 在花括號中包含 變量名稱以顯式指定名稱的末尾 名稱。

這正是你在做什麼。

+0

注意。非常感謝你。 – Sky7ure