search

Home  >  Q&A  >  body text

程序员 - Thinkphp 模板引擎 if 嵌套层级过多的问题,嵌套3级就报错,上完整代码

<if condition="$detail.order.payment.app_rpc_id eq '-1' ">
       <if condition="$detail.order.status eq 'dead' "> 
             已作废
       <elseif  condition="$detail.order.status eq 'finish' "/>
           已完成
       <else/>
          <if condition="$detail.order.pay_status eq '1' "> 
                已支付
           <elseif condition="$detail.order.pay_status eq '2'"/>
                 已付款至担保方
           <elseif condition="$detail.order.pay_status eq '3'"/>
                  部分付款
            <elseif condition="$detail.order.pay_status eq '4'"/>
                   部分退款
             <else/>
                   全额退款
              </if>   
            </if>
     <else/>


     </if>

PHPzPHPz2902 days ago550

reply all(2)I'll reply

  • 高洛峰

    高洛峰2017-04-10 15:02:47

    https://github.com/liu21st/thinkphp/blob/master/ThinkPHP/Library/Think/Template/TagLib/Cx.class.php#L24

    官方的Cx的模板库定义了if的默认嵌套层数,修改这个层数可以支持更多的嵌套格式

    reply
    0
  • ringa_lee

    ringa_lee2017-04-10 15:02:47

    最大允许3级,超过请用switch

    reply
    0
  • Cancelreply