Str_word_count Türkçe Kullanarak Kelimeleri Saymak

<?php
header('Content-Type: text/html; charset=utf-8');
mb_internal_encoding('UTF-8');
$str = "Korkma sönmez bu şafaklarda yüzen al sancak";
print_r(str_word_count($str, 0, "öçşığüÖÇŞİĞÜ"));//kelimeleri say
echo "<br>";
print_r(str_word_count($str, 1, "öçşığüÖÇŞİĞÜ"));//kelimeleri dizi halinde al
echo "<br>";
print_r(str_word_count($str, 2, "öçşığüÖÇŞİĞÜ"));//kelimeleri dizi halinde al ve anahtarı harf sayısına göre arttır
?>

Çıktısı

7
Array ( [0] => Korkma [1] => sönmez [2] => bu [3] => şafaklarda [4] => yüzen [5] => al [6] => sancak ) 
Array ( [0] => Korkma [7] => sönmez [15] => bu [18] => şafaklarda [30] => yüzen [37] => al [40] => sancak )

 

Cümledeki En Uzun Kelimeyi Bulma

<?php
setlocale(LC_ALL, "TURKISH");
header('Content-Type: text/html; charset=utf-8');
mb_language('uni'); 
mb_internal_encoding('UTF-8');
class kelimeSay{
	private $metin;
	function __construct(){
		$this->metin = "Nothing Supplied"; 
	}
	function enUzun($metin){
	  try{
			if(empty($metin)){
				throw new Exception("$this->metin");
			}
			$this->metin = $metin;
			$metin=str_replace(array(".",",","?","!",":",";"),"",$metin);
			$say = array_filter(explode(" ",$metin));
			$kontrol=0;
			foreach($say as $s){
				$s=str_replace(" ","",$s);
				if(mb_strlen($s) > $kontrol){
					$kontrol =mb_strlen($s);
					$kelime =$s;
				}
			}
			return array("harf"=>$kontrol,$kelime);
		} 
		catch(Exception $e){
			echo 'Caught exception: ',  $e->getMessage(), "\n";
		}
	}
}
$metin = "Korkma sönmez bu şafaklarda yüzen al sancak.";
$obj = new kelimeSay;
print_r($obj->enUzun($metin));
?>

Çıktısı

Array ( [harf] => 10 [0] => şafaklarda )