You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Smarty的foreach/section获取多维数组的索引名及SSL配置

解决Smarty遍历多维数组获取域名及SSL状态的问题

你的数组结构中,$packageData[$serviceid] 是一个以域名为键、配置数组为值的关联数组。当前代码的问题是没有捕获数组的键(域名),只遍历了值部分,所以无法获取域名,同时SSL状态的输出可以更严谨。

修正后的Smarty代码

{foreach from=$packageData[$serviceid] item=domainConfig key=domain} 
    <div class="" id="table-data">
      <div id="table-data-entry">
        <label style="font-size: 12px;margin-bottom: 0;" class="">{$domain}</label>
        <span style="font-weight: 700;font-size: 15px;" class="">{$domainConfig.ssl}</span>
      </div>                        
    </div>
{/foreach}

关键说明

  • key=domain:通过foreach的key参数捕获当前遍历项的数组键,也就是你需要的域名(如example.com)。
  • item=domainConfig:当前遍历项的值,即包含ssl配置的子数组,通过$domainConfig.ssl或$domainConfig['ssl']都可以访问SSL状态。
  • 如果$packageData[$serviceid]可能为空,可以加上判断避免空循环:
    {if !empty($packageData[$serviceid])}
        {foreach from=$packageData[$serviceid] item=domainConfig key=domain} 
            <!-- 循环内容 -->
        {/foreach}
    {else}
        <div>暂无域名配置数据</div>
    {/if}
    

内容的提问来源于stack exchange,提问作者Stas Karpinsky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 09:45:46