PHP 4 вообще не поддерживает исключения. Синтаксис для выдачи исключения был бы неверным синтаксисом в PHP 4. См. http://uk3.php.net/manual/en/language.exceptions.php
Было бы удобно, если бы мне сказали немного больше о классе, который выбрасывает исключение.
Я предполагаю, что в самом классе или в том способе, которым вы его называете, есть ошибка, которая запускалась все время и игнорировалась, но теперь вызывает это исключение.
Эта страница посвящена изменениям в PHP5 и дает некоторое представление о работе com_exception: http://devzone.zend.com/article/762
Цитировать:
PHP 5 представляет структурированную обработку исключений (try, catch () и throw ()), и это позволяет нам предоставлять основные исключения COM в PHP с помощью встроенного класса com_exception. Если вы хотите отлавливать ошибки в своих скриптах, вы можете написать код, подобный следующему:
<?php
$com = new COM("...");
try {
$com->call_a_method();
}
catch (com_exception $e) {
print $e . "\n";
}
?>
Надеюсь, приведенный выше фрагмент кода поможет вам. Распечатка сообщения об ошибке может (должна) показать больше о том, что именно идет не так, что должно помочь вам решить, куда идти дальше.
Возможно, конечно, что используемый вами класс Excel также может нуждаться в обновлении; если оно было частью вашего старого приложения на PHP4, то, вероятно, это довольно старый класс; может быть доступна более новая его версия, и если вы нашли ошибку в классе, то новая версия может с этим справиться.