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

  • Liz Morgan

    Liz Morgan

    4 Aralık 2011
  • TheForgottenGamer1

    TheForgotten

    28 AĞUSTOS 2009
  • xSammyJoe1

    xSammyJoe1

    19 Temmuz 2011