Per contare le parole forse potrebbe bastare una cosa tipo:
codice:
function wordCount($str){
	return preg_match_all('/\b\w+\b/',$str,$null);
}



// e questa per contare le prime n parole
function firstNwords($str,$n){
	return preg_replace('/((\b\w+\b.*?){'.$n.'}).*$/s','$1',$str);
}