Ver Mensaje Individual
  #2 (permalink)  
Antiguo 24/09/2012, 09:41
Avatar de GatorV
GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: Como capturar errores con Try Catch PHP

Recuerda que PHP es un lenguaje multiparadigma, cuando inició no tenía soporte para excepciones ni nada orientado a objetos, eso se agregó después, por lo que los errores del core de PHP no muestran excepciones, si no FATAL_ERRORS o Warnings como el que pones, no puedes cachar ese tipo de errores en un bloque try/catch.

Tendrías que hacer un wrapper, como una clase math:
Código PHP:
Ver original
  1. class Math
  2. {
  3.          public static function divide($num1, $num2)
  4.          {
  5.                 if ($num2 === 0) {
  6.                        throw new \DomainException('Division by zero');
  7.                 }
  8.  
  9.                 return $num1 / $num2;
  10.          }
  11. }
  12.  
  13.  
  14. try {
  15.        Math::divide(1, 0);
  16. } catch (Exception $e) {
  17.       echo "hubo un error";
  18. }