Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Convertire lettere accentate nel nome del file

    Buon giorno a tutti.
    Ho provato ad utilizzare varie funzioni per la conversione e/o sostituzione delle lettere accentate che fanno parte del nome di un file pdf che voglio caricare, ma senza risultato.
    esempio 1
    Codice PHP:
    function accented_char_transform($input)
    {
    $search  = array("ç","æ","œ","á","é","í","ó","ú","à","è","ì","ò","ù","ä","ë","ï","ö","ü","ÿ","â","ê","î","ô","û","å","e","i","ø","u");
    $replace = array("c","ae","oe","a","e","i","o","u","a","e","i","o","u","a","e","i","o","u","y","a","e","i","o","u","a","e","i","o","u");
    $output  str_replace($search$replace$input);
    return 
    $output;
    }

    //nome file=pàpèpòpùpì

    $nFile accented_char_transform($_FILES['Filedata']['name']);
    echo 
    $nFile;//risultato pàpèpòpùpì=nessuna conversione avvenuta

    //nome del file caricato: 8455_pèpÃ_pòpù.pdf 
    Se invece, inserisco una semplice stringa uguale al nome del file allora la conversione avviene.
    Quindi, come sostituisco le lettere accentate presenti nel nome del file?
    Grazie mille.

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Verifica il charset del file con lo script PHP, fa che sia UTF8 senza BOM (su alcuni software viene chiamato ANSI as UTF8)

  3. #3
    buon giorno..ti ringrazio dell'interesse ma di quello che m'hai detto non so proprio da dove cominciare.
    Ho capito che il file è stato creato con un charset diverso da quello che utilizzo normalmente e cioè UTF-8,
    Se puoi darmi una mano per favore.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.