我正在用PHP编写一个未完全完成的代码.当我register.php在浏览器中打开这个脚本时,只有一个空白页面,因为我无法克服require('config.php').当我删除时,require('config.php')一切都会出现在我的浏览器中.
你能帮帮我,告诉我有什么问题require吗?
<?php
require('config.php');
if (isset($_POST['submit'])) {
} else {
$form = <<<EOT
<form action="register.php" method="POST">
First Name: <input type="text" name="name" /> <Br/>
Last Name: <input type="text" name="lname" /> <Br/>
Username: <input type="text" name="uname" /> <Br/>
Email: <input type="text" name="email1" /> <Br/>
Email2: <input type="text" name="email2" /> <Br/>
Pass: <input type="password" name="pass1" /> <Br/>
Pass2: <input type="password" name="pass2" /> <Br/>
<input type="submit" value="register" name="submit" />
</form>
EOT;
echo $form;
}
Run Code Online (Sandbox Code Playgroud)
这是因为该require函数将查找该文件config.php.如果找不到,则会出错.只有在文档中放入以下行时,才会显示此错误:
ini_set("display_errors", 1);
error_reporting(E_ALL);
Run Code Online (Sandbox Code Playgroud)
摘自PHP文档:
require与include相同,除非失败,它还会产生致命的E_COMPILE_ERROR级别错误.换句话说,它将暂停脚本,而include仅发出警告(E_WARNING),允许脚本继续.
有关其工作原理,请参阅包含文档.
如果您希望PHP在找不到文件时不给您错误,您可以替换require为include.这意味着当它找不到文件时,它仍然会在之后运行代码.
要解决实际问题,您可以检查是否config.php在正确的位置.如果不是这种情况,请创建一个config.php在您所在的文件夹中调用的文件register.php.
如果你config.php在正确的地方,检查该文件是否有任何错误,如果有,该require功能也不会起作用.