深圳全飞鸿

标题: smarty3中block的研究(2) -- 代码编译过程 [打印本页]

作者: zhgc    时间: 2019-9-5 14:17
标题: smarty3中block的研究(2) -- 代码编译过程
本帖最后由 zhgc 于 2019-9-5 14:34 编辑

smarty3中block的研究(2)  --  代码编译过程

模板内容:
  1. {syant  aa=1 bb=2}
  2. 123
  3. {/syant}
复制代码


翻译后的代码:
  1. <?php $_smarty_tpl->smarty->_cache['_tag_stack'][] = array('syant', array('aa'=>1,'bb'=>2));
  2. $_block_repeat=true;
  3. echo smarty_block_syant(array('aa'=>1,'bb'=>2), null, $_smarty_tpl, $_block_repeat);
  4. while ($_block_repeat) {
  5. ob_start();?>
  6. 123
  7. <?php $_block_repeat=false;
  8. echo smarty_block_syant(array('aa'=>1,'bb'=>2), ob_get_clean(), $_smarty_tpl, $_block_repeat);
  9. }
  10. array_pop($_smarty_tpl->smarty->_cache['_tag_stack']);?>
复制代码








欢迎光临 深圳全飞鸿 (http://www.nagomes.com/disc/) Powered by Discuz! X3.2