Você está aqui: PHP ::: Dicas & Truques ::: Upload de Arquivos |
Retirando acentos, caracteres especiais e espaços do nome de um arquivo durante uma operação de uploadQuantidade de visualizações: 18007 vezes |
Em algumas situações, principalmente em hospedagens Linux, devemos evitar que os nomes dos arquivos enviados ao servidor por meio de upload de arquivos não contenham acentos, espaços ou caracteres especiais. Esta dica mostra como isso pode ser feito. Note que ainda transformamos o resultado em letras minúsculas. Aqui estamos assumindo que o formulário enviado possui um controle <input type="file"> com o nome de "arquivo":---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <? // diretório no qual o arquivo será gravado. este diretório // deverá ter permissão de escrita $diretorio = "/home/xxxx/xxxx/xxx/imagens/"; // vamos verificar o código do erro if($_FILES['arquivo']['error'] == UPLOAD_ERR_OK){ // o arquivo foi transferido com sucesso. vamos remover os // espaços, acentos e caracteres especiais antes de // gravá-lo em seu local definitivo $nome_antigo = $_FILES["arquivo"]["name"]; $novo_nome = strtolower(ereg_replace("[^a-zA-Z0-9_.]", "", strtr($nome_antigo, "áàãâéêíóôõúüçÁÀÃÂÉÊÍÓÔÕÚÜÇ ", "aaaaeeiooouucAAAAEEIOOOUUC_"))); move_uploaded_file($_FILES["arquivo"]["tmp_name"], $diretorio . $novo_nome); echo "O nome do arquivo foi alterado de \"$nome_antigo\" para \"$novo_nome\""; echo "<br>Upload efetuado com sucesso."; } else echo "Ocorreu um erro no upload"; ?> |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de PHP |
Veja mais Dicas e truques de PHP |
Dicas e truques de outras linguagens |
Python - Como calcular o cateto oposto dadas as medidas da hipotenusa e do cateto adjascente em Python |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |