pour le nombre de mots c'est un peu différent :
<?php
$var = 'La belle,attendait son beau marin.Elle s'écria quand elle le vus enfin:"Ha! mon aimé! il-etait-temps!"';
$mots = explode(' ', $var);
echo '<p>Il y a ', count($mots), ' mots avec la première méthode.</p>';
print('<pre>');
print_r($mots);
print('<pre>');
$mots = explode(' ', trim(str_replace(' ',' ',str_replace(array('.',',',';','!','?',':','"',''','-'), ' ', $var))));
echo '<p>Il y a ', count($mots), ' mots avec la deuxieme méthode.</p>';
print('<pre>');
print_r($mots);
print('<pre>');
?>
retourne :
Il y a 15 mots avec la première méthode.
Array
(
[0] => La
[1] => belle,attendait
[2] => son
[3] => beau
[4] => marin.Elle
[5] =>
[6] => s'écria
[7] => quand
[8] => elle
[9] => le
[10] => vus
[11] => enfin:"Ha!
[12] => mon
[13] => aimé!
[14] => il-etait-temps!"
)
Il y a 20 mots avec la deuxieme méthode.
Array
(
[0] => La
[1] => belle
[2] => attendait
[3] => son
[4] => beau
[5] => marin
[6] => Elle
[7] => s
[8] => écria
[9] => quand
[10] => elle
[11] => le
[12] => vus
[13] => enfin
[14] => Ha
[15] => mon
[16] => aimé
[17] => il
[18] => etait
[19] => temps
)