用法是这样的:parse(handler, value, true)

解决方案 »

  1.   

    这是普通的用法吧,在块block里面怎么用?循环里面的语句怎么写?能说详细些吗?谢谢!
      

  2.   

    parse(handler, value, true)就是用在block的循环里的,
    普通的用法是parse(handler, value)或parse(handler, value, false),
    当是true的时候会追加模板变量,不然就不会.
      

  3.   

    我现在了解 parse() 函数的用法了。
    但是具体到这个例子,我试后还是实现不了块的输出。我真的很菜...
    上面的这个例子对你来说应该很简单,帮我看看。
    现在的问题是:
    1)模板中定义的 tsc ,它的作用是什么?
    2)通过 $ts->set_block("tshandle","tsc","tscs"); 定义的 tscs ,它算是什么呢?教程上说它必须写成 {tscs} 的格式,可我测试的时候加与不加没什么区别,是这样的吗?
    3)循环中的$ts->parse(handler, value, true);该怎么写?此时 tshandle,tsc,tscs 中谁是 handle, 谁又是 value 呢?请多指点,多谢了,分少可以再加。
      

  4.   

    这样和你说吧:
    当你定义了
    $ts->set_file("tshandle","tstemp.ihtml");
    那就是说tshandle就是文件名tstemp.ihtml,但不是tstemp.ihtml文件中的内容,它仅仅代表这个文件名;但这个赋值是用在普通的用法中,而block的文件名(不是文件内容)赋值需要用另外一个方法,就是set_block,
    $ts->set_block("tshandle","tsc","tscs");
    tsc表示你的块名,也就是<!-- begin tsc -->中的tsc,但这个块名是在哪个模板中的必须指定,不然就不知道在哪里刷新了,指定他的父级模板就是tshandle,而tshandle在前面已经赋值就是tstemp.ihtml,也就是说tsc块是在tstemp.ihtml模板文件中的,tscs就是你要临时保存tsc块内容的,根据你的循环,它的内容会不断的增加,不需要加{}
    parse应该写成$ts->parse("tscs", "tsc", true);
    tscs就是你以前设置的临时变量,tsc就是你在tstemp.ihtml模板文件中的块,true表示追加
      

  5.   

    十分感谢你--磨碎的沙子!书上的例子也是和你一样用 $ts->parse("tscs", "tsc", true);
    可以这样就报错:
    ----------------------------------------------------
    Template Error: loadfile: tsc is not a valid handle.
    Halted.
    ----------------------------------------------------
    意思好象是 tsc 不是有效的句柄 。
    难道是我的phplib7.2文件的问题吗?还是我的配置有问题,(php4.32 , zend client studio 3.01)
    如果不是程序的问题,我会尝试重新配置php环境。
    再次感谢! :)
      

  6.   

    不客气.
    你有一个错误我才发现:
    <!-- begin tsc -->中的begin必须用大写:BEGIN
    <!-- end tsc -->中的end必须用大写:END
    因为这个原因,所以tsc句柄没有找到
    这是字符窜匹配问题.
      

  7.   

    是版本的问题,用phplib7.4吧,偶然兄给过我一个网址,你搜搜吧
      

  8.   

    1、<!-- BEGIN tsc --><!-- END tsc -->
       否则不能正确执行,但不会报错
    2、你的template.inc文件是多大的?如是15k左右的则无block功能
      

  9.   

    谢谢楼上三位兄弟,特别是 磨碎的沙子。
    终于成功了~~ :)
    (教程上的都是小写begin,end :(  )