【发布时间】:2011-09-17 17:42:41
【问题描述】:
//main.php
<?php
include("functions.php");
<script type="text/javascript">
$(function(){
$("#Div").load("Views/phpfile.php", function(){
alert("file loaded");
});
});
</script>
?>
//End main.php
//phpfile.php
<div>dsfg sfdgsdfgsfdgdf</div>
<div>dsfg sfdgsdfgsfdgdf</div>
<?php
echo sum();
?>
//End phpfile.php
虽然 sum 函数在另一个名为 functions.php 的文件中实现,但请注意,如果我将 sum 函数的实现放在 phpfile.php 中,它将正常工作。
非常感谢任何帮助
【问题讨论】:
-
您必须在
phpfile.php中包含functions.php,而不是在代码第一部分所在的任何文件中。 -
你是对的,但我需要在主文件(父文件)中加载一次。由于 iam 使用 jquery 来加载大量依赖于 functions.php 的 php 文件,因此在这些文件中包含 functions.php 并不是一个好主意。
-
嗯,PHP 是在服务器端执行的。当您加载主文件时,PHP 将处理它,生成一些输出(包括您的 JavaScript)并将输出发送到浏览器。之后,PHP 的工作就完成了,直到您加载另一个文件。但是这些调用之间没有保留“状态”。如果另一个文件也需要访问
functions.php中定义的函数,那么您必须在其中包含该文件。没有别的办法。 -
感谢您的解释,只是我认为可能有黑客攻击。