Author Archive for cristian

Contare le parole contenute in una stringa

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:
  1. <?php
  2.  
  3. $stringa="SILVIA RIMEMBRI ANCORA QUEL TEMPO DELLA TUA VITA MORTALE";
  4.  
  5. //Elimino gli spazi iniziali e finali
  6. $Spazi = trim($stringa);
  7.  
  8. //Trovo tutte le occorrenze degli spazi rimasti
  9. $Parole = substr_count($Spazi," ");
  10.  
  11. //Aggiungo una unità per tenere conto dell'ultima parola
  12. $ParoleContate = $Parole+1;
  13.  
  14. echo "HO CONTATO ".$ParoleContate." PAROLE!!!";
  15.  
  16. ?>

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

Altra alternativa all’header php

Un pò di tempo fa ho postato un articolo riguardante una soluzione come alternativa all'header php.

Quì il link: Alternativa All'Header

Quella soluzione potrebbe andar bene per piccoli gestionali interni.

Il difetto sta nel fatto che per qualche microsecondo, viene visualizzato codice magari non voluto.

Un'alternativa molto utile ed efficace è data dallo javascript.

PHP:
  1. <?php
  2. echo "<script type=\"text/javascript\">
  3. window.location=\"pagina.php\";
  4. </script>";
  5. ?>

Alternativa all’ header PHP

A volte utilizzando l'espressione

PHP:
  1. if ( isset($_POST['Submit']) && $_POST['Submit'] == "Inserisci" ){
  2.     $GoTo = "paginaPHP.php";
  3.     header(sprintf("Location: %s", $GoTo));
  4. }

può capitare di vedersi un errore del tipo:

HEADER ALREADY SENT

Una soluzione veloce e molto efficace potrebbe essere quella di utilizzare il tag meta di html

PHP:
  1. <?php
  2. //blocco condizionale
  3. if ( isset( $_POST['Submit'] ) && $_POST['Submit']== "Inserisci" ){
  4. ?>
  5.  
  6. <META HTTP-EQUIV="REFRESH" CONTENT="2; URL=http://www.sitoweb.it">
  7.  
  8. <?php
  9. }
  10. ?>