2016-12-23 14 views
0

У меня есть следующий PHP-код, который выдает ошибку, поскольку файлы include не существуют. Я еще не сделал их, но хочу остановить ошибки (не просто скрытые). Что я могу положить в мой код, который говорит «не записывать какие-либо ошибки, если файл не существует, просто игнорировать инструкцию»PHP Include - Error Fixing

<?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

Включать только файлы, если они существуют. Вы можете добавить проверку на существующий файл -

switch ($PAGE) { 
    case 'topic': 
     if(file_exists(path_to_file)) { 
      include 'topic.php'; 
     } 
    break; 
    ...... 
}; 

file_exists()

+0

спасибо! PHP все еще очень новичок, так что это была огромная помощь. –

+0

Рад, что это помогло. :) –

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; 
    }; 
?> 

Документация http://php.net/manual/en/function.file-exists.php

1

используйте 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"; 
//}