繁体   English   中英

实际上是php时,如何从服务器发送JS文件?

[英]How to send a JS file from my server when it actually is a php?

我需要服务器发送JS文件,但实际上需要它是PHP生成的文件。
我正在将Apache与PHP结合使用。

所以那个函数命名

doSomething(){
};

doSomething(){
         <?php
               if(registeredUser()){
                    echo "Doing something!";
               }
         ?> 
    };
  1. 给文件一个php扩展名,但像普通JavaScript一样加载它

    <script type="text/javascript" src="/javascript.php"></script>

  2. 在您的PHP文件中发送正确的内容类型:

    header("content-type: text/javascript");

这使您的服务器可以使用PHP创建JavaScript。

您不需要做任何魔术。 只要Javascript有效,浏览器就不在乎创建Javascript的原因!

也就是说,您应该发送正确的Content-type标头:

header('Content-type: text/javascript');

您可以通过简单地使用PHP文件作为脚本的src属性来执行此操作:

<script src="myfile.php"></script>

但是,从资源角度来看,运行另一个PHP脚本并不理想。 触发了另一个PHP进程,您必须注意缓存等问题。

考虑一下您的JS文件中是否不能包含静态代码,并在要运行PHP的主文件中设置要检查的条件。

在JavaScript文件(myfile.js)中:

function doSomething()
   { if (logged_in) do_something() }

在主文件的<head> ,执行以下操作:

<script>
<?php if (registeredUser()): ?>
 logged_in = true;
<?endif; ?>
<script>

然后照常添加静态JS文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM