Я работаю над тарным веб-приложением, основанным на платформе codeigniter-3, которую я должен подключить к веб-сокету, все работает нормально, если сервер подключен к сети, но если сервер отключен, возникает ошибка php.
Я использовал функцию exec в php, это позволяет мне пропинговать сервер и, основываясь на потере возвращаемого пакета, определять, включен сервер или нет.Но иногда это не сработает.Это позволяет ему проходить, даже если сервер выключен, это имеет шанс 1/20 (эта статика основана только на экспериментальной).
$host = "192.168.1.100";
$port = 6001;
$sock = socket_create(AF_INET, SOCK_STREAM, 0);
$suck = socket_connect($sock, $host, $port) or die("error: could not connect to host\n");
$tare = socket_read($sock, 1024);
$tare = trim($tare);
$tar_array = explode(" ", $tare);
for ($i=1; $i < 16 ; $i++)
{
$real_tare = $real_tare + intval($tar_array[$i]);
}
echo $real_tare;
Мне не нужно огромное сообщение об ошибке, но небольшой обработчик error_handler, говорящий о том, что сервер просто отключился, как я написал, показывает err lan
вместо ошибки php, которая останавливает все приложение.(PS. Я не мог предоставить изображение или ссылки из-за своей низкой репутации.)