[英]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!";
}
?>
};
给文件一个php扩展名,但像普通JavaScript一样加载它
<script type="text/javascript" src="/javascript.php"></script>
在您的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.