SORU
19 HAZİRAN 2009, Cuma


Nasıl bir sözcüğü bir dize PHP kullanarak içeriyorsa kontrol edebilir miyim?

Sahte Kod

text = "I go to school";
word = "to"
if ( word.exist(text) ) {
    return true ;
else {
    return false ;
}

Eğer kelime metin içinde varsa true döndüren bir PHP fonksiyonu arıyorum.

CEVAP
19 HAZİRAN 2009, Cuma


Bir kaç seçenek gereksinimlerinize göre. Bu basit bir örnek, strpos() muhtemelen kullanmak için en basit ve en doğrudan fonksiyonudur. Eğer sonuç ile bir şeyler yapmak gerekiyorsa, strstr() preg_match() tercih edebilirsiniz. Eğer iğne gibi karmaşık bir desen yerine bir dize kullanmanız gerekiyorsa, preg_match() isteyeceksiniz.

$needle = "to";
$haystack = "I go to school";

strpos() and stripos() yöntem (() stripos. büyük / küçük harf duyarlı):

if (strpos($haystack, $needle) !== false) echo "Found!";

strstr() and stristr() method (stristr büyük / küçük harf duyarlı değildir):

if (strstr($haystack, $needle)) echo "Found!";

preg_match method (düzenli ifadeler, çok daha fazla ama daha yavaş çalışır esnek):

if (preg_match("/to/", $haystack)) echo "Found!";

Tam bir işlev için sırf sen istediğin için, bu arada (iğne ve Samanlık için varsayılan değerler ile) koymak istiyorum:

function match_my_string($needle = 'to', $haystack = 'I go to school') {
  if (strpos($haystack, $needle) !== false) return true;
  else return false;
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BeginnersTech

    BeginnersTec

    8 NİSAN 2011
  • GALERNAYA20

    GALERNAYA20

    19 NİSAN 2011
  • Lin Steven

    Lin Steven

    17 EKİM 2006