我有以下PHP代码产生错误,因为包含文件不存在。我还没有制作它们,但我想阻止产生错误(不仅仅是隐藏)。我可以在代码中添加任何内容,“如果文件不存在则不记录任何错误,只需忽略指令”
<?php
$PAGE = '';
if(isset($_GET['page'])) {
$PAGE = $_GET['page'];
};
switch ($PAGE) {
case 'topic': include 'topic.php';
break;
case 'login': include 'login.php';
break;
default: include 'forum.php';
break;
};
?>
答案 0 :(得分:1)
在调用include;
之前,使用file_exists()检查文件是否存在if (file_exists('forum.php')) {
//echo "The file forum.php exists";
include 'forum.php';
}
//else
//{
// echo "The file forum.php does not exists";
//}
答案 1 :(得分:0)
仅在文件存在时包括文件。您可以添加对现有文件的检查 -
switch ($PAGE) {
case 'topic':
if(file_exists(path_to_file)) {
include 'topic.php';
}
break;
......
};
答案 2 :(得分:0)
您似乎在寻找@
运算符来消除表达式中的任何错误,您可以在此处阅读更多相关信息:http://php.net/manual/en/language.operators.errorcontrol.php
答案 3 :(得分:0)
使用file_exists()函数:
<?php
$PAGE = '';
if(isset($_GET['page'])) {
$PAGE = $_GET['page'];
};
switch ($PAGE) {
case 'topic':
if (file_exists("topic.php")){
include 'topic.php';
}
break;
case 'login':
if (file_exists("login.php")){
include 'login.php';
}
break;
default:
if (file_exists("forum.php")){
include 'forum.php';
}
break;
};
?>