title: How does the smarty expression $entry@key work?
body: <p>While reading the smarty documentation of the built-in {call}-function (<a href="http://www.smarty.net/docs/en/language.function.call.tpl" rel="nofollow">link to the specific documentation page</a>), I saw this code snippet (it's an example of the documentation):</p>
  
  <pre><code>{function name=menu level=0}
    &lt;ul class="level{$level}"&gt;
    {foreach $data as $entry}
      {if is_array($entry)}
        &lt;li&gt;{$entry@key}&lt;/li&gt;
        {call name=menu data=$entry level=$level+1}
      {else}
        &lt;li&gt;{$entry}&lt;/li&gt;
      {/if}
    {/foreach}
    &lt;/ul&gt;
  {/function}
  </code></pre>
  
  <p>I'm confused by the expression</p>
  
  <pre><code>$entry@key
  </code></pre>
  
  <p>Can somebody explain how it works, please?</p>
  
  <p>Thanks!</p>