一行代码的PHP停止警告

一行代码的PHP停止警告,php,error-handling,Php,Error Handling,我有以下应该存在的警告,但是有没有一种方法可以阻止它们写入页面而不实际禁用全局警告 警告: 警告:文件\u get\u contentsE:/connected.txt:无法打开流: 第19行的C:\xampp\htdocs\ppa\test.php中没有这样的文件或目录 警告:文件\u get\u contentsF:/connected.txt:无法打开流: 第19行的C:\xampp\htdocs\ppa\test.php中没有这样的文件或目录 警告:文件\u get\u contents

我有以下应该存在的警告,但是有没有一种方法可以阻止它们写入页面而不实际禁用全局警告

警告:

警告:文件\u get\u contentsE:/connected.txt:无法打开流: 第19行的C:\xampp\htdocs\ppa\test.php中没有这样的文件或目录

警告:文件\u get\u contentsF:/connected.txt:无法打开流: 第19行的C:\xampp\htdocs\ppa\test.php中没有这样的文件或目录

警告:文件\u get\u contentsG:/connected.txt:无法打开流: 第19行的C:\xampp\htdocs\ppa\test.php中没有这样的文件或目录

警告:文件\u get\u contentsH:/connected.txt:无法打开流: 第19行的C:\xampp\htdocs\ppa\test.php中没有这样的文件或目录

警告:文件\u get\u contentsI:/connected.txt:无法打开流: 第19行的C:\xampp\htdocs\ppa\test.php中没有这样的文件或目录

警告:文件\u get\u contentsJ:/connected.txt:无法打开流: 第19行的C:\xampp\htdocs\ppa\test.php中没有这样的文件或目录

警告:文件\u get\u contentsK:/connected.txt:无法打开流: 第19行的C:\xampp\htdocs\ppa\test.php中没有这样的文件或目录

警告:文件\u get\u contentsL:/connected.txt:无法打开流: 第19行的C:\xampp\htdocs\ppa\test.php中没有这样的文件或目录

警告:文件\u get\u contentsM:/connected.txt:无法打开流: 第19行的C:\xampp\htdocs\ppa\test.php中没有这样的文件或目录

警告:文件\u get\u contentsN:/connected.txt:无法打开流: 第19行的C:\xampp\htdocs\ppa\test.php中没有这样的文件或目录

警告:文件\u get\u contentsO:/connected.txt:无法打开流: 第19行的C:\xampp\htdocs\ppa\test.php中没有这样的文件或目录

警告:文件\u get\u contentsP:/connected.txt:无法打开流: 第19行的C:\xampp\htdocs\ppa\test.php中没有这样的文件或目录

PHP函数:

//Check if the connection file is present on each drive
function scanDrives() {
    //Possible drives
    $letters = "DEFGHIJKLMNOP";
    $letters = str_split($letters);

    $code = md5("FMbHSBTMTXhu3TWp");

    //Check for a certain file on each device
    foreach($letters as $x) {
        $file = file_get_contents($x.":/connected.txt"); //This is what causes the error as the file can't be found.
        if ($file != false) {
            $file_code = split(":", $file);
            //Check if the file has the correct pass code
            if($file_code[0] == $code) {
                //Successful, return pass value and device letter and set name
                echo (1).",".$x.",".$file_code[1];
            }
        }
    }
}

谢谢

不要盲目地打开包含file\u get\u内容的文件。首先检查它是否存在

if(file_exists($x.":/connected.txt")){
    $file = file_get_contents($x.":/connected.txt");
    // ...
}

尝试将@放在给出警告的函数之前


我同意火箭危险品

但要回答您的问题-在PHP中,您可以使用。。具体来说,您可以使用@符号忽略错误

简单例子

$file = @file_get_contents("file_doesnt_exist.php"); // wont throw any errors.

这比使用@suppression要好得多+1@FDL:我永远不会推荐@operator。检查/处理错误总比盲目忽略错误要好:-是的,事实上这是真的!@RocketHazmat的解决方案更好!我唯一一次真正使用@operator是使用DOMXpath来避免其他人文档中的xml/xhtml错误。了解这些信息很有用,但最好是纠正错误,而不是把错误掩盖起来。