Aviso do PHP: O conteúdo do conteúdo do POST de n bytes excede o limite de 3145728 bytes em Desconhecido na linha 0
Estou bastante surpreso ao encontrar o erro mencionado acima em meu log de erros porque achei que já tinha feito o trabalho necessário para capturar o erro no meu script PHP:
if ($_FILES['image']['error'] == 0)
{
// go ahead to process the image file
}
else
{
// determine the error
switch($_FILES['image']['error'])
{
case "1":
$msg = "Uploaded file exceeds the upload_max_filesize directive in php.ini.";
break;
....
}
}
No meu script PHP.ini, as configurações relevantes são:
memory_limit = 128M
post_max_size = 3M
upload_max_filesize = 500K
Eu entendo que o 3M é equivalente a 3145728 bytes e que isso é o que está provocando o erro. Se o tamanho do arquivo for acima de 500k, mas menor que 3M, o script PHP poderá ser executado de acordo com o normal, emitindo a mensagem de erro em$msg
conformecase 1
.
Como obtenho este erro em vez de deixar o script terminar abruptamente com um aviso de PHP quando o tamanho da postagem excedepost_max_size
mas ainda bem dentro do limite de memória? Eu olhei para questões semelhantesAqui, Aqui eAqui, mas não conseguiu encontrar uma resposta.