Tip of week : PHP – Upload de arquivos grandes
Agosto 10, 2009
Hoje me deparei com o seguinte problema, ao tentar enviar um arquivo com mais de 8MB para meu servidor local no qual o arquivo simplemente e não chegava, com isso logo imaginei a fonte do problema php.ini e após uma rápida consulta no sr. google eis aqui o sulução:
Possiveis valores a serem configurados:
- file_uploads = On -> responsável pela autorização de uploads.
- upload_max_filesize = 2M -> determina o tamanho máximo permitido do arquivo.
- post_max_size = 8M -> indica o tamanho máximo de dados enviados por formulário. Esta diretiva tem primazia sobre o upload_max_filesize ; assim, certifique-se que você tem post_max_size superior a upload_max_filesize.
Caso não tenha aceso ao php.ini, pode-se verificar a configuração graças à função phpinfo().
PHP – Parâmetros por referência
Julho 30, 2009
No php vc pode modificar aos valores dos parâmetros passados usando “&” na frente da variavel
Exemplo simples
echo $valor = “teste #data foi efetuado a alteração<br/>”;
addChar($valor);
echo $valor;
function addChar(&$novaStr){
$novaStr = str_ireplace(“#data”, “__/__/____”, $novaStr);
}
Caso não seja usado o modificador, seria implementado assim:
echo $valor = “teste #data foi efetuado a alteração<br/>”;
$valor = addChar2($valor);
echo $valor;
function addChar2($novaStr){
return str_ireplace(“#data”, “__/__/____”, $novaStr);
}
ARRAY
Usar este modificador em foreach pode ser bem útil
$alunos = array(array(“nome” => “Andi Gutmans”, “notaFinal” => 8.7),
array(“nome” => “Felipe Fischer”, “notaFinal” => 7.5),
array(“nome” => “Thiago Prates”, “notaFinal” => 5.5));foreach($alunos as &$aluno){
if($aluno['notaFinal'] >= 7)
$aluno['status'] = “Aprovado”;
else
$aluno['status'] = “Reprovado”;
}print_r($alunos);
Extra:
#Operador de atribuição por pré-referência
$nome = “Johny”;
$nomeApelido =& $nome; //ao mudar o valor da variavel nomeApelido valor é alterado na $nome
$nomeApelido .= ” legal”;
echo $nome;
PHP – wordwrap()
Julho 2, 2009
wordwrap(string string, int tamanho, string quebra, boolean cortar)
VALOR PADÃO : wordwrap(string string, 75, \n, false)
A função wordwrap() é usada para quebrar linhas de uma string usando \n ou o valor especificado ex:”<br/>”
$string = “Texto de teste exteeeeeeeeeeeeeeeeeeeeeesssssssssssssssssooooooooooo!!!!!!!!”;
//30 é o numero maximo de carateres por linha caso nenhuma palavra tenha mais de 30 caracteres.
//<br/> string de quebra de linha.
$string = wordwrap($string,30,“<br/>”);
echo $string;
Retorno:
Texto de teste
exteeeeeeeeeeeeeeeeeeeeeesssssssssssssssssooooooooooo!!!!!!!!
$string = “Texto de teste exteeeeeeeeeeeeeeeeeeeeeesssssssssssssssssooooooooooo!!!!!!!!”;
//30 é o numero maximo de carateres por linha.
//<br/> string de quebra de linha.
//true ativa a quebra de palavras com tamanho maior que 30 caracteres.
$string = wordwrap($string,30,“<br/>”,true);
echo $string;
Texto de teste
exteeeeeeeeeeeeeeeeeeeeeesssss
ssssssssssssooooooooooo!!!!!!!
!