Почему ошибка fopen () не может быть обработана с помощью попытки поймать? [дублировать]Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Почему ошибка fopen () не может быть обработана с помощью попытки поймать? [дублировать]

Сообщение Anonymous »

Я точно не знаю, как работают исключения. Я предполагаю, что они должны избегать ошибок PHP и отображать «мое сообщение об ошибке». Например, я хочу открыть файл: < /p>

Код: Выделить всё

class File{

public $file;

public function __construct($file)
{
try{
$this->file = fopen($file,'r');
}
catch(Exception $e){
echo "some error" . $e->getMessage();
}
}
}

$file = new File('/var/www/html/OOP/texts.txt');
< /code>
И это работает. Теперь я намеренно изменяю имя файла texts.txt 
на tex.txt , чтобы просто увидеть сообщение об ошибке из моего блока улова, но вместо этого PHP дает предупреждение об ошибке: Fopen (/var/www/html/oop/texts.txt): не удалось открыть Stream: No File или Directory in /var/wwww/html/op): no stream: no file или directory in /var/wwww/html/op). Так что это ошибка PHP, но она не отображает сообщение об ошибке из блока Catch. Что я делаю не так? Как именно Try/поймать работу?

Подробнее здесь: https://stackoverflow.com/questions/387 ... -try-catch
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»