我不确定这个一般问题是否允许在这里,但我还是试试。我正在创建一个新网站(只是为了娱乐和“训练”我的技能)。我正处于一些javascript代码行,但每页都不需要代码。
所以我决定将所有javascripts粘贴到php文件(javascript.php)中,并在该文件中添加以下行:
<?php $site_name = basename($_SERVER['REQUEST_URI'], ".php"); ?>
<?php if ($site_name == "index") { ?>
<script type="text/javascript">
//script 1
</script>
<?php } elseif ($site_name == "index1") { ?>
<script type="text/javascript">
//script 1
</script>
<?php } elseif ($site_name == "index2") { ?>
<script type="text/javascript">
//script 2
</script>
<?php } elseif ($site_name == "index3") { ?>
<script type="text/javascript">
//script 3
</script>
<?php } ?>
它运作正常。
但是,由于我是一名编码新手,我想知道这是否是一个聪明的解决方案?你能不能把女孩和男人告诉我你的意见以及为什么这样做聪明/愚蠢?
谢谢!
答案 0 :(得分:2)
如果你必须有单独的Javascript包含,我不会使用IF,因为它可能变得非常庞大且难以管理。您可以使用交换机(同样的问题,IMO),或者只是将JS放入单独的文件中并根据$ site_name包含:
<?php
$site_name = basename($_SERVER['SCRIPT_NAME'], ".php");
echo "
<script type=\"text/javascript\" src=\"$site_name.js\"></script>
";
?>
当然,还有其他方法可以做到这一点。您可以考虑使用CodeIgniter,CakePHP或Drupal等框架来管理文件。
答案 1 :(得分:1)
我建议将所有内容保存在一个javascript标记中,并且(如果javascript文件足够大)将它们移动到单独的文件而不是内联。除此之外,我认为这是一个比它不需要的浏览器处理javascript更好的解决方案。只记得你在javascript找不到函数时这样做了;)