所以我一直在尝试使用这种功能,但我一直在我的控制台中获取以下错误消息:拒绝执行来自myurl / script.php?param = bar的脚本,因为它的MIME类型(text / html)不可执行,并启用严格的MIME类型检查。我的脚本名为
当然,最容易使它成为js.php文件。
但是,如果可能,请考虑另一种方法:在包含外部脚本文件之前将PHP定义提取到JavaScript中:
define1 = <?php echo YOUR_DEFINE1; ?>
define2 = <?php echo YOUR_DEFINE2; ?>
这样,外部JavaScript仍可以作为静态内容提供,不需要通过PHP运行。这是资源密集度较低的。
没有经过测试,但可能有效:
尝试将脚本.php作为文件扩展名。
是的,这很好。
如果你的PHP代码是有效的javascript语法,这只会有机会工作。
它不适合我,但我也注意到我需要另一个PHP内部可能会产生问题:)
Downvoting还可以,但解释会很好:)
杰伊,似乎就是这样
@Jay:为什么?它与在HTML中嵌入PHP相同。当然你必须将你的PHP代码包装在中,其余部分应该不受PHP解释器的影响...或者我不明白你的观点。你通过PHP生成的JS代码应该是有效的。但PHP代码本身永远不会是有效的JS代码......
@Jay我真的,非常确定Felix意识到PHP必须输出有效的JS。
@Jay不正确:PHP代码需要生成javascript语法。如果已经分裂了头发
您也可以在服务器级别执行此操作。假设您正在使用apache,您可以将此行添加到您的配置中(即使您的.htaccess也可以):
AddType application/x-httpd-php .js
你也可以用css甚至普通的'html页面来做到这一点。
我确信其他服务器软件具有类似的功能。
这不是一个好主意。它不仅速度较慢(所有.js文件都将通过PHP解析,无论它们是否包含代码),但它也可能是一个安全漏洞。
global_one = '';
快速示例;)如果您在所有其他javascript文件之前将其放在html 中,则global_one变量将对所有js文件可用。
是的,只需编写一个输出JavaScript的php文件,并像往常一样将其包含在您的页面中
<?php $f=40; ?>