Pergunta

No meu construir XAMPP / Win XP, PHP5.2.3 não consegue capturar quaisquer exceções. Nenhum dos exemplos trabalho, e isso:

try {
    throw new Exception('Fail');
} catch (Exception $e) {
    echo 'Succeed';
}

... resulta em:

Erro fatal : exceção Uncaught 'Exceção' com a mensagem 'Falha' em M: \ path \ to \ test.php: 4 Rastreamento de pilha: # 0 {Principal} jogado em M: \ path \ to \ test.php na linha 4

Todas as configurações de erro do PHP parece padrão. Server é Apache / 2.2.4

Foi útil?

Solução

Isso depende de construção de eAccelerator no XAMPP. Em um ponto, que tinha otimização problemas try / declarações de capturas e apenas os ignorou.

O problema estava em 0.9.5. XAMPP atualmente é empacotado com eAccelerator 0.9.5.3, embora esteja desativado por padrão. Portanto, este pode não ser o seu problema.

De acordo com a ChangeLog , XAMPP não usou PHP 5.2. 3 e Apache 2.2.4 em um longo tempo, que é também em torno da época do bug eAccelerator. Eu recomendo verificar a sua versão eAccelerator e possivelmente atualizar XAMPP.

Outras dicas

Eu recebo "suceder" como saída executando o seu roteiro, tanto autônoma na linha de comando e via apache em um servidor web, bem como em xampplite. Não sei o que é diferente de sua configuração

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top