jQuery加载php文件作为文本?

时间:2015-01-10 00:24:49

标签: php jquery

是否可以使用jquery加载php文件作为文本?

$('#loader').load('somefile.php', function(e){
    console.log(e);
});

这总是解释/执行php文件,但我正在寻找一种只将它作为文本加载的方法,而不是将我的php文件重命名为.txt 可能吗? 干杯

3 个答案:

答案 0 :(得分:1)

不进行任何服务器端修改是不可能的。 Web服务器将始终解释php文件并返回输出。然而,无论你发现什么解决方案并不重要,因为你将把你的php文件的内容转储给公众,这将是非常危险的。

服务器端修改的可能解决方案:

  • 创建一个转储文件内容的PHP文件,该文件名由url参数
  • 指定
  • 重命名文件(我知道操作不需要这个,只是包含,因为它是一个选项)
  • 正如@ n​​icholas-young所建议的那样,摆脱PHP标签。

我不确定为什么你需要这种类型的需求,但我想强调一点,在大多数情况下这可能不是一个好主意,因为你将公开提供一个可用的PHP文件。如果您能解释为什么需要这个,我们可能会提供更好的解决方案。

更新: 创建一个需要授权的dumper.php,并从javascript端调用此文件,并将要转储的文件名作为参数传递(dumper.php?file = index.php)

echo file_get_contents($_GET['file']);

答案 1 :(得分:0)

当然不可能。

.load将向yourwebsite.com/somefile.php发出HTTP请求,因此您将获得脚本的结果,而不是其中的PHP代码。

如果你真的需要你的javascript中的原始代码作为字符串,你应该从php本身输出它:

<script>
var yourCode = <?=json_encode(file_get_contents('somefile.php')) ?>;
</script>

答案 2 :(得分:0)

NO!如果可能,将是一个重大的安全问题。标题无关紧要。如果向php文件发出请求,它将在交付之前执行。

使用一些参数来打印文件中的内容。但是在文件本身中这样做。