जब आप नाम में डैश करते हैं तो आप सरणी कुंजी के मान का मान कैसे प्रस्तुत करते हैं?ट्विग इसमें एक डैश के साथ सरणी कुंजी प्रस्तुत करें
$snippet = "
{{ one }}
{{ four['five-six'] }}
{{ ['two-three'] }}
";
$data = [
'one' => 1,
'two-three' => '2-3',
'four' => [
'five-six' => '5-6',
],
];
$twig = new \Twig_Environment(new \Twig_Loader_String());
echo $twig->render($snippet, $data);
उत्पादन
1
5-6
Notice: Array to string conversion in path/twig/twig/lib/Twig/Environment.php(320) : eval()'d code on line 34
है और यह four['five-six']
ठीक renders:
मैं इस टुकड़ा है। लेकिन ['two-three']
पर एक त्रुटि फेंकता है।
Thats क्योंकि 'दो three' एक स्थानीय प्रतीक के रूप में इस्तेमाल किया जा रहा है .. इसमें' $ दो three' उपयोग करने की कोशिश की तरह हो कच्चा PHP यदि आप अपने उदाहरण में टवीग का उपयोग कर रहे हैं तो आपको सरणी नाम के साथ सरणी को '$ data = array (' values '=> $ theOtherArray) जैसी कुंजी के रूप में पास करना चाहिए; ' – prodigitalson