PHP模板javascript最佳实践?

时间:2013-11-26 21:38:48

标签: javascript php templates standards

使用JavaScript的PHP(Twig等)中的模板有哪些最佳实践?在这些模板中包含JavaScript是好/坏的做法?如何处理JavaScript?

例如;我当前的设置是

something.php
something.thtml // includes all templating and JavaScript

我想的可能是:

something.php
something.thtml // no JS
something.js // move index.thtml JS out and into its own JS file which is loaded.

然而,从长远来看,这可能成为“意大利面”;所以我想知道在PHP中创建模板时要遵循的标准是什么,以便于维护。

3 个答案:

答案 0 :(得分:1)

尝试TwigMustache

Twig模板示例:

<!DOCTYPE html>
<html>
    <head>
        <title>My Webpage</title>
    </head>
    <body>
        <ul id="navigation">
        {% for item in navigation %}
            <li><a href="{{ item.href }}">{{ item.caption }}</a></li>
        {% endfor %}
        </ul>

        <h1>My Webpage</h1>
        {{ a_variable }}
    </body>
</html>

答案 1 :(得分:0)

通常你的js会与你的html文件分开,所以你应该尽量避免在模板文件中放入任何javascript,但这样做没有错。

应该有像公共文件夹这样的东西来保存你的css,图像和js 然后所有HTML或模板都单独提供

答案 2 :(得分:0)

我想有很多不同的方法可以做到这一点,但我发现每个文件都有不同的角色是最好的。

我发现在php脚本中创建html页眉和页脚更好,你可以调用你想要的任何javascript

function makeHTML($vTitle,$vMetaKeywords,$vMetaDescription,$vJavascripts,$vOnLoad,$vPage)
 {$vHTML = '<!DOCTYPE html">' . "\n";
  $vHTML.= '<html>' . "\n";
  $vHTML.= '<head>' . "\n";
  $vHTML.= '<title>' . $Title . '</title>' . "\n";
  $vHTML.= '<LINK HREF="css/style.css" REL="stylesheet" TYPE="text/css">' . "\n";
  $vHTML.= '<meta http-equiv="Content-Type" CONTENT="text/html; charset=utf-8">' . "\n";
  $vHTML.= '<link rel="stylesheet" href="css/style.css">';
  $vHTML.= ($vJavascripts == '' ? '' : $vJavascripts);
  $vHTML.= '</head>' . "\n";
  $vHTML.= '<body' . ($vOnLoad == '' ? '' : ' onLoad="' . $vOnLoad . '"') . '>' . "\n";
  $vHTML.= $vPage;
  $vHTML.= '</body>' . "\n";
  $vHTML.= '</html>' . "\n";
  return $vHTML;}

$ vPage是您从模板创建的页面,不包含任何javascript或html标头。 这样您就可以在不必修改所有模板的情况下处理标题

$ vJavascripts包含您希望从任何javascript文件中获得的javascript。

通过这种方式,您可以处理标题或javascript,而无需每次都在15个不同的文件夹中进行操作。

然后,在脚本的最后,只需将$ vHTML回显到页面