V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
cnzfq
V2EX  ›  PHP

Smarty 页面显示空白, 且 template_c 重复生成文件缓存

  •  
  •   cnzfq · 2015-05-01 16:40:42 +08:00 · 3885 次点击
    这是一个创建于 3523 天前的主题,其中的信息可能已经有所发展或是发生改变。

    PHP Smarty 编译模板,前台显示空白,至今未找到问题原因。

    而发现template_c 目录下重复生成文件:
    nxweb02^%%77^774^774BE9C9%%index.html.php
    nxweb02^%%A6^A6D^A6D4A70B%%header.eng.tpl.html.php
    nxweb02^%%87^872^872FB21A%%footer.eng.tpl.html.php

    nxweb03^%%77^774^774BE9C9%%index.html.php
    nxweb03^%%A6^A6D^A6D4A70B%%header.eng.tpl.html.php
    nxweb03^%%87^872^872FB21A%%footer.eng.tpl.html.php

    寄希望于V友给点思路, :)

    13 条回复    2015-05-07 13:34:31 +08:00
    picasso250
        1
    picasso250  
       2015-05-01 17:35:00 +08:00
    珍爱生命,远离smarty。

    如果你们的前端团队不超过3个人,使用smarty是没有意义的。
    pathletboy
        2
    pathletboy  
       2015-05-01 17:45:43 +08:00
    @picasso250 前端后端分离还是有意义的,和人数没多大关系。
    155
        3
    155  
       2015-05-01 17:48:24 +08:00
    路径里带了中文?
    Septembers
        4
    Septembers  
       2015-05-01 18:27:10 +08:00
    PHP版本和Smarty不匹配?语法错误?用最新的Smarty置换现在的Smarty?
    manhere
        5
    manhere  
       2015-05-01 19:32:06 +08:00
    看看 template_c 里生成的 php 文件内容啊
    cnzfq
        6
    cnzfq  
    OP
       2015-05-01 21:35:11 +08:00 via iPhone
    @picasso250


    @155 可以确认路径不带中文喔。


    @Septembers 可以排除语法错误和路径出错,网站有三个语言版本,cht和chs正常显示,而eng出错。


    @manhere 明天看看生成的php 不过很离奇,

    为什么一个文件会生成两个缓存呢?
    Felldeadbird
        7
    Felldeadbird  
       2015-05-01 21:36:24 +08:00 via iPhone
    @picasso250 @pathletboy 不论项目大小,都不应该用模板引擎,多次一举。 当然,你的是外包,出于利益,可以这样做。

    @manhere 调试法,非常好。
    Felldeadbird
        8
    Felldeadbird  
       2015-05-01 21:37:47 +08:00 via iPhone
    有一个可能是js的代码和页面产生了冲突,楼主试下删掉所有代码,直接输入一个字母看看。
    cnzfq
        9
    cnzfq  
    OP
       2015-05-04 16:16:32 +08:00
    今天回到公司再看,网页竟然正常显示了。同事说,IT部门重启了IIS...

    @Felldeadbird 感谢你的解答。没错,之前有碰到几次由于JS导致smarty错误。

    感谢各位关注和解答!
    picasso250
        10
    picasso250  
       2015-05-04 16:47:12 +08:00
    @pathletboy 我支持前后端分离,不支持smarty以及其他所有PHP的模板语言。
    pathletboy
        11
    pathletboy  
       2015-05-04 21:10:03 +08:00
    @picasso250 那么请教,你用PHP的时候,如何进行前后端分离的?
    picasso250
        12
    picasso250  
       2015-05-05 11:08:20 +08:00
    @pathletboy 工作中是angular js (我不是前端)
    自己做的项目中,是直接用php做模板语言的。(PHP也是模板语言啊,摔
    kimmykuang
        13
    kimmykuang  
       2015-05-07 13:34:31 +08:00
    我们也用smarty,有些上千行的模板文件,还夹杂着大量业务逻辑的判断,调试起来真的很痛苦。我的建议是如果前后端分离的话干脆后端API化吧,前端可以用mvc/mvvm框架来实现。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1009 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 18:43 · PVG 02:43 · LAX 10:43 · JFK 13:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.