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

  • DetroitBORG

    DetroitBORG

    29 Temmuz 2008
  • L- Crysis

    L- Crysis

    30 Aralık 2011
  • NPR

    NPR

    22 NİSAN 2006