Premetto che i titoli dei miei articoli sono tutti in minuscolo con le parole separate solamente da trattini. Inoltre, ho fatto in modo che negli elenchi, mediante un while, si vadano a disporre tutti i titoli dove devono, grazie al fatto di essere memorizzati in stringhe.
Detto ciò vogliamo che nei titoli diventino maiuscole le iniziali delle parole giuste. I CSS non mi aiutano granché, perché il capitalize può andare o sulla prima lettera del titolo o su tutte le iniziali, mentre non vogliamo un titolo del tipo "Progetto Per Il Mondo", ma "Progetto per il Mondo"!
Questa è al soluzione che ho trovato per le maiuscole, anche se mi sembra un pochino perversa:
Codice PHP:
$string explode("-"$pagina);
         
$lenght count($string);
         
$maiusc file("maiuscole.txt"FILE_IGNORE_NEW_LINES);
         for(
$i 0$i<$lenght-1$i++) //Perché l'ultima parola non è mai articolo, ecc.//
           
{
             if (!
in_array($string[$i], $maiusc))
               {
                
$string[$i] = ucwords($string[$i]);
               }
             
$titolo $titolo.$string[$i]." ";
           }
         
$titolo .= ucwords($string[$lenght-1]); 
Nota: in "maiuscole.txt" ci sono tutte quelle parole che non dovrebbero diventarlo, come gli articoli, le preposizioni, ecc.
Per le maiuscole, quindi, vorrei semplicemente sapere se questo è il metodo ottimale (e spero veramente di no, perché è proprio brutto!). :master:

Per quanto riguarda gli apostrofi e gli altri segni di interpunzione il problema è più serio, forse. Qui si tratta di sostituire al momento giusto dei trattini con degli apostrofi o con delle virgole. Un metodo, diciamo, sarebbe quello di chiamare l'apostrofo "--" e la virgola "---" e sostituirli nella stringa. Chiaramente anche questa soluzione è orribile, soprattutto se visti gli indirizzi che si verrebbero a creare!
Grazie mille a tutti, ma sono problemi di vita