Salve a tutti,
ecco a voi uno scriptino realizzato da me in questi giorni per una semplice utility.
Lo script consiste nel contare parole contenute in una stringa.
Le funzioni utilizzate sono state:
trim(string)- per levare inutili spazi lasciati dall'utente all'inizio e fine stringa
substr_count(haystack, needle) - Per contare gli spazi presenti
PHP:
-
<?php
-
-
$stringa="SILVIA RIMEMBRI ANCORA QUEL TEMPO DELLA TUA VITA MORTALE";
-
-
//Elimino gli spazi iniziali e finali
-
-
-
//Trovo tutte le occorrenze degli spazi rimasti
-
-
-
//Aggiungo una unità per tenere conto dell'ultima parola
-
$ParoleContate = $Parole+1;
-
-
echo "HO CONTATO ".
$ParoleContate.
" PAROLE!!!";
-
-
?>
La funzione substr_count viene utilizzata per contare gli ulteriori spazi rimanenti dopo l'eliminazione di questi da inizio e fine stringa attraverso la funzione trim.
Dopodichè aggiungo una unità al totale degli spazi contati per tenere conto dell'ultima parola dopo l'ultimo spazio.
Ecco quà, fatemi sapere se vi è stata utile, o se avete altre soluzioni, sicuramente più performanti della mia.
Cristian
Chi fa il web master o il web developer sa che una delle cose più fastidiose è quando il cliente fornisce i testi scritti tutto in maiuscolo. Altrettanto fastidioso è quando un cliente ha l'amministrazione dei contenuti del sito e, appunto, ha il brutto vizio a scrivere tutto in maiscolo.
Con questa funzione il testo viene riformattato con il primo carattere dopo il punto in maiuscolo, e il resto in minuscolo.
Di particolare importanza 2 funzioni:
PHP:
-
$text="TEST. TESTO MAIUSCOLO. COME FARE.";
-
-
function formatta_testo ($stringa){
-
$stringa =
explode ('.',
$stringa);
-
-
for ($i = 0; $i <$n; $i++){
-
-
if ($i> 0){
-
$stringa[$i] = ' ' . $stringa[$i];
-
}
-
}
-
$stringa =
implode ('.',
$stringa);
-
return $stringa;
-
}
-
-
echo formatta_testo
($text);
// Test. Testo maiuscolo. Come fare.
Prendo spunto da una chiave di ricerca utilizzata per arrivare qua.
Contare i caratteri di una stringa in php è molto semplice perchè esiste già una funzione adatta a questo scopo:
strlen($stringa)
Una cosa da tenere sempre presente è che gli spazi vuoti sono considerati un carattere come qualsiasi altro e vengono quindi conteggiati.
PHP:
-
$stringa = "sempreverde";
-
-
-
$stringa = "stringa con spazi vuoti";
-
In alcuni casi puoi aver necessità di riportare solo una parte di una stringa molto lunga. Ad esempio quando devi far vedere il preview di una news. A questo scopo torna utilissima una funzione già bella pronta di php:
substr ( string ,start [,length] )
i 3 paramentri da prendere in considerazioni sono:
- la stringa su cui devi lavorare (string)
- la posizione di partenza (start)
- il numero di caratteri che vuoi visualizzare (length)
ecco ad esempio come prendere i primi 35 caratteri del primo verso della Divina Commedia
PHP:
-
$string ="Nel mezzo del cammin di nostra vita
-
mi ritrovai per una selva oscura,
-
ché la diritta via era smarrita.
-
";
-
$preview =
substr($string,
0,
35);
// "0" indica l'inizio
-
Il risultato dell'echo sarà:
"Nel mezzo del cammin di nostra vita ..."
...
come invece contare le parole e non i caratteri, te lo faccio vedere un'altra volta
Ultimi Commenti