PHP strpos() KONKSİYONU KULLANIMI

String içerisinde istediğimiz ifadenin nereden başladığını bulmak için kullanılır. Örneğin "Bilmemek ayıp değil, öğrenmemek ayıptır." şeklinde bir string değişkenimizde "değil" kelimesi veya harf grubunun ilk konumunu bulur.

Not: strpos () işlevi, küçük harfe duyarlıdır.

Sözdizimi:

strpos( string, ara,başlangıç )

Paremetreler:

string : Gereklidir. Aramanın yapılacağı dizge.

ara : Gereklidir. Bulmak için string ifade belirtilir. Not :Aranacak ifade bir string değilse, önce bir tamsayıya dönüştürülür ve bu tamsayı karakterin kodu olarak ele alınır.

başlangıç : İsteğe bağlı. Aramayı nereden başlayacağınızı belirler.

Dönen Değerler :

Konumu bir tamsayı olarak döndürür. Eğer Aranan ifade bulunamazsa strpos() işlevi boolean türünde FALSE döndürür.

Uyarı : Bu işlev mantıksal FALSE değeriyle dönebileceği gibi FALSE olarak değerlendirilebilecek mantıksal olmayan bir değerle de dönebilir. Bu fonksiyondan dönen değeri sınamak için "===" oparatörünü kullanınız.

İlgili fonksiyonlar :

strrpos() - Bir stringin içinde başka bir stringin son rastlanılan noktanın indisini döndürür.

stripos() - Harf büyüklüğüne duyarsız olarak, bir stringin içinde başka bir stringin ilk rastlanılan noktanın indisini döndürür.

strripos() - Bir stringin içinde harf büyüklüğüne duyarsız olarak başka bir stringin son rastlanılan noktanın indisini döndürür.

Örnek:

<?php

$metin = "Bilmemek ayıp değil öğrenmemek ayıptır.";
	
	$sonuc = strpos($metin,"değil");
	
	echo "sonuç...=".$sonuc;   // ÇIKTI : 15
	
 ?>

Yukarıda örnekte "değil" ifadesi string içerisinde yer alıyordu dolasıyla bize "d" harfinin başladığı index geri döndü. Her zaman istediğimiz gibi olmayabilir. ve aradığımız ifade string'de yer almayabilir. Böyle bir durumda strpos fonksiyonu geriye false döndürür. yalnız geri dönen sonucu kontrol ederken dikkatli olmalı ve "===" oparatörünü kullanmalıyız.

Örnek:

<?php

$metin = "Bilmemek ayıp değil öğrenmemek ayıptır.";
	
 $sonuc = strpos($metin,"Elma");
	
 if($sonuc === false){
		
 echo "Elma bulunamadı";
  
  // ÇIKTI :Elma bulunamadı
	}
	
	
 ?>

strpos'un kullanılabileceği bir örnek de email adresinin kontrolüdür. Her email adresinde "@" işareti içermek zorundadır. Eğer üyelik formunda ziyaretçiden email adresini girmek istersek ziyaretçinin girdiği ifadede "@" olması gerekiyor. "@" olup olmadığı strpos ile kontrol edebiliriz.

Örnek:

<?php

$email = "admin@webcebir.com";
	
 $sonuc = strpos($email,"@");
	
 if($sonuc !== false){
		
 echo "Geçerli email";
  
  // ÇIKTI :Geçerli email
	}
		
 ?>

mb_strpos KULLANIMI

mb_strpos () aynı şeyi yapar ama aynı zamanda karakter sınırlarını saygı duyar.

Tüm karakterler tek bir bayt ile ifade edilebileceği pek çok dil vardır. Multi-byte karakter kodları. Birçok dilde birçok karakter ifade etmek için kullanılır mbstring Japonca ve çince karakterleri işlemek için geliştirilmiştir. Ancak, birçok mbstring fonksiyonları Japonca ve çincenin dışındaki karakter kodlamasında da kullanabiliyoruz.

PHP temelde ISO-8859-1 için tasarlanmış olduğundan, bazı multi-byte karakter kodlaması PHP ile iyi çalışmaz.

mbstring(multi-byte stringleri) fonksiyonları bazı charecter kodlarında hata alırsak multi-byte takılı (mb_substr...vb) fonksiyonları kullanabiliriz.

Sözdizimi:

mb_strpos( string, ara,başlangıç,kodlama )

kodlama : İsteğe bağlı. kodlama değiştirgesinde karakter kodlaması belirtilir. Belirtilmediği takdirde dahili karakter kodlaması kullanılır.

Örnek:

<?php

 $metin = "Bilmemek ayıp değil öğrenmemek ayıptır.";
	
 $sonuc = mb_strpos($metin,"değil",0,"UTF-8");
	
 echo "sonuç...=".$sonuc;   // ÇIKTI : 14
	 
 ?>

Adınız

Eposta

Mesaj

1539

Güvenlik No

REKLAM
KATEGORİ
POPÜLER MAKALE