是否可以使用 jquery 将 php 文件作为文本加载?
$('#loader').load('somefile.php', function(e){
console.log(e);
});
这总是解释/执行 php 文件,但我正在寻找一种仅将其加载为文本的方法,而无需将我的 php 文件重命名为 .txt可能吗?干杯
如果不进行任何服务器端修改,这是不可能的。Web 服务器将始终解释 php 文件并返回输出。但是,无论您发现哪种解决方案,它都会非常危险,因为您将向公众转储php文件的内容。
服务器端修改的可能解决方案:
- 创建一个 PHP 文件,该文件转
- 储文件的内容,其名称由 url 参数指定
- 重命名文件(我知道op不希望这个,只是包括在内,因为它是一个选项)
- 正如@nicholas-young所建议的那样,摆脱PHP标签。
我不确定为什么你需要这种类型的需求,但我想强调的是,在大多数情况下,这可能不是一个好主意,因为您将向公众提供一个有效的PHP文件。如果您能解释更多为什么需要这个,我们可能会提供更好的解决方案。
更新:创建一个需要授权的转储程序.php并从javascript端调用此文件,并将要转储的文件名作为参数传递(dumper.php?file=index.php)
echo file_get_contents($_GET['file']);
这当然是不可能的。
.load
将向yourwebsite.com/somefile.php
发出HTTP请求,因此您将获得脚本的结果,而不是其中的PHP代码。
如果你真的需要javascript中的原始代码作为字符串,你应该从php本身输出它:
<script>
var yourCode = <?=json_encode(file_get_contents('somefile.php')) ?>;
</script>
不!如果可能的话,将是一个主要的安全问题。标题无关紧要。如果对 php 文件发出请求,它将在交付之前执行。
使用一些参数来打印出文件中的内容。但是在文件本身中执行此操作。