Pergunta

Estou tentando fazer uma exceção usando o Php 5.3.2 e está me dando o seguinte erro:

Erro de análise: erro de sintaxe, T_THROW inesperado

Estou tentando fazer uma exceção da seguinte maneira:

throw new Exception('Property ' . $name . ' doesn\'t exist in class Index', '');

Edit: eu também tentei

throw new Exception('Property ' . $name . ' doesn\'t exist in class Index');

Não mudou o erro que estava recebendo.

O método completo:

public function __get($name) 
    {
        if(property_exists($this, $name)
            throw new Exception('Property ' . $name . ' doesn\'t exist in class Index');
        return $this->$name;
    }
Foi útil?

Solução

Verifique seu código PHP para erros de gravação, às vezes sinto falta de um ';' o que pode causar erros.

Tente escrever também a instrução IF formalmente, adicionando colchetes. Eu sei que não deve ter chances, mas quem sabe com a programação!

Outras dicas

Você está perdendo os parênteses finais da sua linha if () e assim o php vê isso

if(property_exists($this, $name) throw new Exception(...);

que não é sintaxe válida. Coloque a) No final da sua linha if ():

if(property_exists($this, $name))

EDIT: Eu odeio quando sinto falta das respostas abaixo de uma resposta. :(

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