我有这个标记:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
ini_set('display_errors', 1);
ini_set('log_errors', 1);
include_once('../API/session_management.php');
//Checking session fixation:
$sess=new session_management();
$sess->set_session_configurations();
$sess->prevent_session_hijacking();
?>
sdfsd
<a href=""></form>
<form>
<input type="text" name="test"/>
</form>
</body>
问题是当我运行代码时,出现错误。正在打印空白页。没有显示错误。为什么会这样,以及如何启用错误?
这是我在php ini中将显示错误更改为on并重新启动apache之后和之前得到的输出:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
答案 0 :(得分:8)
您需要的两行是
ini_set('display_errors', 'On');
error_reporting(E_ALL);
最好在开发环境的php.ini
文件中设置它们。这会从项目中删除非生产代码,并解决语法错误等问题导致ini_set()
和error_reporting()
调用无法执行(感谢Corbin)。
另一个建议是,在任何HTML启动之前放置PHP代码(位于脚本顶部)。看起来你正在处理在将任何内容添加到输出缓冲区之前应该完成的会话。