Makale yazımı yaparken sürekli 250 kelimenin üzerine çıkmam gerektiğini biliyordum ve sürekli bir siteye girip sayacı kullanmak yerine böyle bir tasarım yapmıştım kendime. Php ile kelime sayacı yapmak için bir adet index sayfası da yeterli olabilir. Burada anahtar nokta zaten Str_Word_Count fonksiyonunda. İndex sayfasında tasarladığım basit bir textarea ile kelimeyi yazıp göndereceğiz. Böylece gelen kelime sayısını fonksiyonla işledikten sonra ekrana basacağız. Normalde iki adet sayfa ile de yapılabilir ama ben css dosyaları ile birlikte tek sayfada olayı paylaşmak istiyorum. Sayfanın en altında da örneği test etmeniz için bir link bırakıyorum.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /> <title>KELİME SAYACI</title> <style type="text/css"> .text{ border-radius:10px; width:350px;height:220px;padding:15px;color:#666;font-family:helvetica;font-size:14px; } .buton{cursor:pointer;width:380px;height:40px;font-weight:bold;transition:500ms;} .buton:hover{cursor:pointer;width:380px;height:40px;font-weight:bold;background-color:black;color:white;} h4{color:orange;font-weight:bold;width:150x} </style> </head> <body> <?php if($_POST){ $kelime = $_POST["word"]; if(!$kelime){ echo 'Kelime alanını doldurun.'; }else{ echo '<h3>'.str_word_count($kelime).'</h3>'.'adet kelime var.'; } } ?> <form action="" method="post"> <h4>Kelime sayısı hesaplanacak metni girin</h4> <textarea class="text" name="word"></textarea> <br> <input class="buton" type="submit" value="Kelime Sayısını Hesapla" /> </form> </body> </html>
Böylece tek sayfada kelime sayacımızı bitirmiş olduk. Sizde zırp pırt başka sitede işinizi halletmek istemiyor ve pratik olsun istiyorsanız örneğimi kullanabilirsiniz.
Alternatif Kelime Sayacı Kullanımı
Bu fonksiyonun bazı hataları olabilir bu yüzden fazladan bir kod parçacığı daha bırakıyorum. Bu explode ile bölme işlemi yaptırarak kesin sonucu elde edebilirsiniz.
<? function hesapla($metin) { $parcalar = explode(" ", $metin); $say = count($parcalar); echo "$say kelime"; }
//Kullanımı da bu şekilde
$metin ="metinde kaç kelime var acaba"; hesapla($metin); # çıktı : 5 kelime ?>