PHP生成的Javascript代码是不良做法吗?

时间:2013-01-14 21:40:21

标签: php javascript code-generation

我想知道这个问题,因为我想要在单独的js文件中创建javascript代码或者通过PHP生成它,有人可以告诉我,如果它是通过PHP生成的不好的做法吗?

5 个答案:

答案 0 :(得分:2)

它与生成HTML一样糟糕,所以没有 - 这样做很好。 但是,如果您的JavaScript永远不会更改,那么单独的文件将是理想的。

答案 1 :(得分:1)

虽然这不一定是不好的做法,但您应该不惜一切代价避免它,主要是以长期代码可维护性的名义。如果您不需要动态生成JavaScript,则不应该。

即便如此,当它确实需要动态生成时,大多数时候你只是生成动态变量。

编写静态javascript文件然后动态生成带变量的脚本标记是明智的决定。

示例:

<script type="text/javascript">
   var message = "<?= $my_message ?>";
</script>

<script type="text/javascript" src="static-message.js" />

static-message.js包含:

  alert("Your message: " + message);

这是有效的,因为在加载static-message.js文件之前会设置消息变量。

答案 2 :(得分:1)

如果我能帮忙,我不会。除非没有其他方法来处理它。想到了可维护性和测试能力。这是一个与语言无关的问题。你可能会用纯粹的解释语言来解决这个问题,但是如果你用编译/半编译语言做这样的事情,你可能会感到很痛苦。我投票支持尽量减少混合。如果你必须公开一个数据元素供JS工作,那么将JS的其余部分保存在一个单独的文件中。

答案 3 :(得分:0)

我经常使用PHP动态生成CSS文件。这允许您创建可以在多个项目之间共享的CSS样式表,但也包含与项目特定相关的自定义样式。

同样可以应用于其他资源。包括JavaScript,图像,PDF文档等。等。

使用PHP成功执行此操作的关键是应用正确的标头信息。包括浏览器应如何缓存响应。您可能还希望将脚本的输出缓存到临时文件。为了使将来对相同信息的请求更快加载。

答案 4 :(得分:0)

能够这样做非常方便,但我不建议纯粹从代码维护和代码清晰度的角度来看。另外一些编辑器对于具有服务器内容的JS代码也没有良好的智能感知。