問題很短。樹枝中的氣味
我有一個整數鍵的數組,而參數是字符串。我想通過使用該參數來獲取該數組的元素。
如何進入小枝intval - (int)"32"
的{{ variable }}
其中variable == (string) "32";
?
問題很短。樹枝中的氣味
我有一個整數鍵的數組,而參數是字符串。我想通過使用該參數來獲取該數組的元素。
如何進入小枝intval - (int)"32"
的{{ variable }}
其中variable == (string) "32";
?
有樹枝過濾器。其中之一是這樣的:
http://twig.sensiolabs.org/doc/filters/number_format.html
{{ variable|number_format }}
,如果你是在一個字符串做數學,它會自動轉換爲一個整數反正,但是!
糾正我,如果我錯了,但在這裏你是反轉OP的問題。 '{{variable | number_format}}'將int轉換爲字符串,是的,解決了這個問題,但是相反... – xDaizu
我不相信這是正確的。我只是測試它,「number_format」過濾器不會將字符串轉換爲int。 – Cninroh
正如@ xDaizu提到的,這是將一個float轉換爲一個字符串。請參閱http://php.net/number_format以及小枝功能只是一個包裝 – lordrhodos
您可以使用一個變量來訪問數組的值,如下所示:myArray[myKey]
。數組鍵是整數(例如32
)還是相應的字符串("32"
)或myKey
是整數還是字符串都無關緊要。所有這些組合應該工作(see TwigFiddle):
{% set myArray = {
1: 'first',
'2': 'second',
} %}
{% set keyOneInt = 1 %}
{% set keyOneStr = '1' %}
{% set keyTwoInt = 2 %}
{% set keyTwoStr = '2' %}
{# These all print 'first' #}
{{ myArray.1 }}
{{ myArray[1] }}
{{ myArray['1'] }}
{{ myArray[keyOneInt] }}
{{ myArray[keyOneStr] }}
{# These all print 'second' #}
{{ myArray.2 }}
{{ myArray[2] }}
{{ myArray['2'] }}
{{ myArray[keyTwoInt] }}
{{ myArray[keyTwoStr] }}
在上面的代碼中的第三行,該字符串鍵'2'
實際上是轉換成integer 2
,像PHP's documentation of arrays狀態:包含有效
字符串十進制整數,除非編號爲 前面有一個+符號,將轉換爲整數類型。例如。密鑰 「8」實際上將存儲在之下。另一方面,「08」將不會被 強制轉換,因爲它不是有效的十進制整數。
如果由於某種原因你需要一個整數,你可以通過對它進行數學運算來將一個字符串轉換爲一個整數 - 例如, variable * 1
(= "32" * 1
)或variable + 0
(= "32" + 0
)。
你確定這心不是應用程序邏輯和進入前枝應該做? – ToBe