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

  • Branboy3

    Branboy3

    12 AĞUSTOS 2012
  • khloe brooks

    khloe brooks

    25 Temmuz 2011
  • kylelandry

    kylelandry

    9 AĞUSTOS 2007