Estudio Web
8 de abril de 2008

Solução para alguns erros de PHP


Fatal error: Allowed memory size of 8388608 bytes exhausted

· Solução

Colocar logo abaixo da tag <? a instrução:

ini_set("memory_limit","32M");

ou ir no php.ini e alterar a instrução

memory_limit = 8M para um valor maior.

Caso o erro continue aumente o limite, para 64MB, por exemplo.

· Explicação

Esse erro não é muito comum de acontecer. Por padrão o PHP vem configurado com para atender operações de até 8MB. Quando um processo ultrapassa esse limite, vem o erro. Geralmente, scripts que ultrapassam o limite de 8M estão mal escritos, tente refazê-los.

Fatal error: Maximum execution time of 30 seconds exceeded in

· Solução

Na linha abaixo da tag <? , coloque a instrução:

set_time_limit(120);

ou no php.ini altere a linha:

max_execution_time , colocando um valor maior.

Vale lembrar que o valor é em segundo, nosso exemplo, por exemplo, seriam 120 segundos (2 minutos).

· Explicação

Quando o limite durante os quais é permitida a execução do script é ultrapassado é retornado um erro fatal. O limite padrão é de 30 segundos. Geralmente esse erro aparece quando há upload de arquivos ou grandes requisições no banco de dados.

Fatal error: Cannot modify header information - headers already sent

· Solução

1) Substituir o Header(“Location:$URL”); por outra forma de redirecionamento, por exemplo, redirecionar via javascript.

2) Retirar as saídas echo e print do código.

3) Certifique-se de que não há espaço branco fora do php no início e no fim das tags. Uma linha em branco antes do <? Pode parecer inocente, mas quando processado pelo PHP, ele irá se transformar em um echo.

· Explicação

Esta mensagem de erro é normalmente vista pelos programadores iniciantes. A Compreensão da razão deste erro irá ajudá-lo a encontrar a solução.

Uma página na Web é composta por duas partes, o cabeçalho e o corpo. O cabeçalho é uma parte que você não trabalha, então você não precisa se preocupar com detalhes, é gerado automaticamente, o cabeçalho contém informações sobre a página (servidor, cookies, etc).

Às vezes os programadores desejam alterar alguns dos valores do cabeçalho. Por exemplo, se o PHP for para gerar uma saída XML, o Content-Type deve ser mudado para refletir esta situação. Outro exemplo comum é no redirecionamento navegador do usuário para uma outra página da Web usando o cabeçalho Location.

Autor: Vitor Hugo - Desenvolvimento