To count words in a php string usually we can use str\_word\_count but I think not always a good solution

### good example:

```
$var ="Hello world!";
echo str_word_count($str);
print_r(str_word_count($str, 1));

```

-->output

```
   2
   Array ( [0] => Hello [1] => world ) 

```

### bad example:

```
$var ="The example number 2 is a bad example it will not 
count numbers  and punctuations !!";

```

-->output:

```
  14
  Array ( [0] => The [1] => example [2] => number [3] => is [4] => a
  [5] => bad [6] => example [7] => it [8] => will [9] => not 
  [10] => count [11] => numbers [12] => and [13] => punctuations ) 

```

Is there a good predefined function to do this properly or do I have to use preg\_match() ?