Как перехватить [Symfony \ Component \ Debug \ Exception \ ContextErrorException]

1

Я пытаюсь сделать команду php с помощью symfony для подключения через ssh к серверу. Все в порядке, но если я не могу подключиться к серверу (сервер недоступен), я беру эту ошибку:

[Symfony\Component\Debug\Exception\ContextErrorException]             
Warning: ssh2_connect(): Unable to connect to skin-master on port 22  

Это нормально, но если я попытаюсь поймать ошибку, сделав что-то вроде этого:

try{
                $exec=$this->ssh_connect($cinema);
            }
            catch(\Exception $e){
                echo $e;
                $this->no_connection($em,$cinema);
                continue;

Я продолжаю иметь ошибку, поэтому я не могу контролировать это исключение. Как я могу это сделать? Благодаря :)

  • 0
    Почему в секции catch есть continue ?
  • 0
    Потому что находится в штате.
Теги:
exception
ssh

2 ответа

0

Проверить соединение. Вы можете использовать:

http://php.net/manual/en/function.fsockopen.php

0

просто поймать исключение явно

try {

} catch (\Symfony\Component\Debug\Exception\ContextErrorException $e) {

}

если вам нужно поймать и другие исключения, вы можете сделать это так

try {

} catch (\Symfony\Component\Debug\Exception\ContextErrorException $e) {

} catch (\Some\Other\Exception $e) {

} catch (\Exception $e) {

}
  • 0
    Это не работает, может быть потому, что это предупреждение, что Symfony поймать. Возможно ли контролировать это предупреждение?
  • 0
    как это не работает? что происходит при использовании этого кода?
Показать ещё 12 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню