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
	 
 ?>

Mehmet mert 09/04/2020

,'23:00','23:05','23:10','23:15'+'358.858','358.912','35 mesela böyle bir metnim var. + dan öncesini almak içine nasıl yapmalıyız. + dan sonrası konunuzda varda. çok teşekkürler

yönetici 10/04/2020

Mehmet, şu konuya bak.

Esra 22/04/2020

Str pos ile + operatörünü aratıyorum da iki tane + operatörü varsa ne yapmalıyım ikisini aratabilmek için

yönetici 24/04/2020


<?php
$x = "20+20+20";

$sayi=count(explode("+",$x))-1;

echo $sayi;


Lütfen konu haricinde soru sormayın cevaplanmayacaktır. Yorumunuz onaylandıktan sonra yayınlanacaktır. Lütfen Yukarıda ki mesajları okuyun tekrar aynı soruları sormayın.

1319

KATEGORİ
  • HTML
  • CSS
  • PHP
  • JQUERY
  • PHOTOSHOP
  • JavaScript
  • Web Dünyası
  • Linux
  • MİTHRİL FRAMEWORK
  • Laravel
  • Git
  • React
POPÜLER MAKALE
  • HTML LİNK(Bağlantı)EKLEME - LİNK VERME
  • HTML YAZI VE RESİM ORTALAMA
  • HTML RESME LİNK VERME
  • HTML FORM OLUŞTURMA
  • CSS YATAY MENÜ YAPIMI
  • HTML RESİM EKLEME
  • CSS (BOYUT) GENİŞLİK VE YÜKSEKLİK (Width-Height)
  • HTML DİV ve SPAN NEDİR?
  • HTML ARKAPLANA MÜZİK EKLEME
  • KALİTE KAYBETMEDEN RESİMLERİ BÜYÜTME
ETİKET
WEBCEBİR © 2013 Tüm hakları saklıdır.