我同意 bfavaretto,他的代码片段肯定会起作用。我通常喜欢将我的类、函数和输出保存在单独的文件中,以便它具有更多的跨项目可用性,如下所示。可能是更多的 php 编码,但最后,可重用性帮助了我很多。我将按如下方式组织您的项目。
正在加载的原始页面:
<?php require './includes/class/register.class.php'; ?>
<?php include './includes/registerModules.php'; ?>
$register = new register(); //Calls the constructor for class 'register'
<?php registerForm(); ?> // Runs the registerForm() function. Nothing is output to the browser until this function is called. That way you can include a test to see if a user is already logged in and use a header redirect (which requires that no output code be sent to the browser before the header function is called) if you so desire.
./includes/class/register.class.php
class register {
function __construct() {
echo 'SYSTEM: This is the register page';
}
}
./includes/registerModules.php
function registerForm(){
echo '<form action="http://abc.org/test" method="POST">
<input type="username" value="">
<input type="password" value="">
<input type="submit" value="Register">
</form>';
}
这样,任何时候您可能需要添加到 register.class.php 的任何类时,您都可以将它们包含在不一定需要显示注册表单的页面上。例如您可能需要做的任何后处理。这些类都将在那里,您可以使用适当的构造函数(在本例中$register = new register();
)实例化它们。
由于您将这些函数包含在 registerModules.php 中,因此无论您在何处调用所需的函数,函数的输出都会出现在进行函数调用的位置。使格式化更容易。例如,在您调用<?php registerForm(); ?>
. 这样,您可以在创建可能需要的任何构造函数后重用表单,如上所示,并在站点的其他区域以通用格式显示表单。
我知道在这种情况下,注册表可能只会出现一次,但这是可重复使用的格式,您可以将其应用于任何常见元素。