Satır sonu için php araması. PHP kullanarak bir dizgede alt dizgi bulma. Özel çözümlerde standart fonksiyonlar

  • 03.11.2019

Bir dizgede bir karakterin ilk oluşumunu bulur.

Sözdizimi:

String strchr (string samanlık, string iğne)

Bu işlev, strstr () işleviyle aynı şekilde çalışır.

Dizede baştaki karakterlerin bulunmadığını belirler.
Sözdizimi:

Int strcspn (string str1, string str2)

strspn () işlevi, tamamen str2'deki karakterler olmayan str1'in ilk bölümünün uzunluğunu döndürür.

strpbrk ()

Belirli bir kümeden (PHP5) herhangi bir karakter için bir dizede arama yapın

Sözdizimi:

Dize strpbrk (dize samanlık, dize char_list)

strpbrk () samanlıkta char_list'teki karakterleri arar ve karakterin bulunduğu konumdan başlayarak dizeyi döndürür (veya karakter bulunamazsa FALSE). Char_list büyük/küçük harfe duyarlıdır.

$ text = "Bu Basit Bir Metindir.";

echo strpbrk ($ metin, "mi"); // "Basit bir metindir" sonucunu döndürür. "i" karakteri daha erken ortaya çıkar

echo strpbrk ($ metin, "S"); // "Basit metin" döndürür. karakterler büyük/küçük harfe duyarlıdır
?>

Bir dizede bir alt dizenin ilk oluşumunu bulur.
Sözdizimi:

String strstr (string samanlık, string iğne)

strstr () işlevi, saman parametresi tarafından belirtilen dizenin, iğne parametresi tarafından belirtilen ilk kısımdan sonuna kadar olan kısmını döndürür.

$ e-posta = " [e-posta korumalı]";
$ etki alanı = strstr ($ e-posta, "@");
// veya $ etki alanı = strstr ($ e-posta, ord ("@"))
yankı $ etki alanı;
// @ mail.ru'yu görüntüler

Bir alt dizenin ilk oluşumunu bulma, büyük/küçük harfe duyarlı değil.
Sözdizimi:

String stristr (string samanlık, string iğne)

stristr () işlevi, saman parametresi tarafından belirtilen dizenin, iğne parametresi tarafından belirtilen ilk kısımdan sonuna kadar olan kısmını döndürür.
Başarısızlık durumunda false döndürür.
Bu işlev büyük/küçük harfe duyarsızdır.
iğne bir dize değilse, değer bir tamsayıya dönüştürülür ve istenen karakterin kodu olarak kullanılır.

Bir alt dizenin son tekrarını bulun.
Sözdizimi:

String strrchr (string samanlık, string iğne)

strrchr () işlevi, iğne parametresinde belirtilen son kısımdan sonuna kadar samanlık parametresi tarafından belirtilen dizenin bölümünü döndürür.
Başarısızlık durumunda false döndürür.
Bu işlev büyük/küçük harfe duyarlıdır.
iğne bir dize değilse, değer bir tamsayıya dönüştürülür ve istenen karakterin kodu olarak kullanılır.

// $ PATH içindeki son dizini al
$ dir = substr (strrchr ($ YOL, ":"), 1);
// ve burada son satır beslemesinden sonraki her şeyi alıyoruz $ text = "text 1nText2nText3";
echo substr (strrchr ($ metin, 10), 1);

Belirtilen dizede bir alt dizenin ilk oluşumunun konumunu bulur.
Sözdizimi:

Int strpos (dize nerede, ne dizesi [, int nereden])

strpos () işlevi, dizedeki alt dizeyi bulmaya çalışır ve başarılı olursa, dizedeki bu alt dizenin konumunu (dizini) döndürür.
Dizenin ilk karakterinin indeksi 0'dır. Dizenin başından değil de başka bir konumdan arama yapmak istiyorsanız, nereden isteğe bağlı parametresi belirtilebilir. Bu durumda, bu pozisyon nereden geçilmelidir. Alt dize bulunamazsa, işlev false döndürür.

if (strpos ($ metin, "a") === false) echo "Bulunamadı!";
// Kontrol et: üç eşittir işareti

Belirtilen dizede bir alt dizenin ilk oluşumunun konumunu büyük/küçük harfe duyarlı olmadan bulur.
Sözdizimi:

Int stripos (dize nerede, ne dizesi [, int nereden])

stripos () işlevi, dizedeki alt dizeyi bulmaya çalışır ve başarılı olursa, dizedeki bu alt dizenin konumunu (dizini) döndürür.
strpos() işlevinden farklı olarak, bu işlev büyük/küçük harfe duyarlı değildir. Dizenin ilk karakteri 0 dizinine sahiptir.
Satırın başından değil, başka bir konumdan arama yapmak istiyorsanız, nereden isteğe bağlı parametre belirtilebilir.
Bu durumda, bu pozisyon nereden geçilmelidir. Alt dize bulunamazsa, işlev false döndürür.
what parametresi bir dize değilse, bu durumda değeri bir tam sayıya dönüştürülür ve istenen karakterin kodu olarak kullanılır.

$ mystring1 = "xyz";
$ mystring2 = "ABC";

$ konum1 = şeritler ($ mystring1, $ beni bul);
$ pos2 = şeritler ($ mystring2, $ beni bul);

// Elbette "a", "xyz" içinde yer almaz
if ($ pos1 === yanlış) (
echo "Dize" $ findme "" dizesinde bulunamadı" $ mystring1 "";
}

// === kullanıldığını unutmayın. == kullanmak başarısız olur
// sonuç, "a" sıfır konumunda olduğundan if ($ pos2! == false) (
echo "Bulundu" $ beni "içinde" $ mystring2 "$ pos2 konumunda";
}
?>

Not: Stripos () işlevi, verileri ikili biçimde bulmak için kullanılabilir.
Destek: PHP 5

Belirtilen dizede belirtilen parçanın bulunduğu son konumu bulur.
Sözdizimi:

Int strrpos (dize nerede, dize ne)

Bu işlev nerede satırında sembolün neyle karşılaştığını (eğer ne ise) son konumu arar.
birkaç karakterden oluşan bir dize, sonra yalnızca ilki algılanır, gerisi herhangi bir rol oynamaz).

İstenen karakter dizedeki ilk karakterse veya hiç mevcut değilse, işlev 0 döndürür.

Gerekli karakter bulunamazsa false döndürür.

substr_count

Bir dizedeki bir parçanın oluşum sayısını bulur.
Sözdizimi:

Int substr_count (dize nerede, dize ne)

substr_count () işlevi, where dizesinde bulunan parçaların sayısını döndürür.

Echo substr_count ("www.spravkaweb.ru", ".");
// 3 yazdırır

Dizede baştaki karakterlerin varlığını belirler.
Sözdizimi:

Int strspn (string str1, string str2)

strspn () işlevi, tamamen str2'deki karakterlerden oluşan str1'in ilk bölümünün uzunluğunu döndürür.

Echo strspn ("www.spravkaweb.ru", "abc");
// 3 yazdırır

PHP'deki strpos () işlevi, dize verilerini işlerken en çok kullanılanlardan biridir. İstenen alt dizenin orijinal dizeye dahil edildiği yerden başlayarak konumu belirlemenizi sağlar. Aynı zamanda, yeterli bir sonuç elde etmek için bir takım incelikler dikkate alınmalıdır.

Giriş ve çıkış parametreleri

Genel olarak, PHP strpos () işlevinin sözdizimi aşağıdaki gibidir:

Karışık dizgeler (dize $ dizgi, karışık $ alt dizgi [, int $ offset = 0])

İki gerekli bağımsız değişken ve bir isteğe bağlı girdi olarak kabul edilir:

  • İlk dize, aramanın gerçekleştirileceği $ dizesidir.
  • Gerekli alt dize $ alt dizesidir. Bu parametre karışık tiptedir. Bu, dize veri türüne ek olarak, işlevin başka herhangi birini kabul edebileceği anlamına gelir. Bu durumda, argüman bir tamsayıya dönüştürülecek ve bir karakter kodu olarak ele alınacaktır.
  • Ofseti - $ ofsetini belirten isteğe bağlı bir parametre. Varsayılan olarak, arama $ dizesinin en başından itibaren gerçekleştirilir ve uzaklık 0'dır. Negatif bir kayma belirtirseniz, dizenin sonundan itibaren sayılır.

PHP strpos () işlevi, $ alt dizesinin $ dizesine girdiği konumu döndürür. Bu tür birkaç olay varsa, yalnızca ilkinin konumu döndürülür.

Eşleşme yoksa, çıktı bir boolean false olacaktır.

İşin özellikleri

Bir alt dizi konumu ararken, karakter numaralandırmasının sıfırdan başladığını akılda tutmak önemlidir. Bu nedenle 0, geçerli dönüş değerlerinden biridir.

Gevşek bir karşılaştırmada, 0 bir boole türüne dönüştürülür, yanlış olur ve hiçbir oluşum olarak algılanamaz. Bu nedenle, karşılaştırılan değerlerin türünü dikkate alarak katı eşitlik (===) kullanmak çok önemlidir.

Ayrıca, strpos (), büyük/küçük harfe duyarlı bir PHP işlevi örneğidir.

kullanım örnekleri

Örnek 1. Basit giriş. Alt dize anahtarının dize maymunlarında göründüğü konumu bulmak istiyorsunuz.

Örnek 2. Olay yok. Arama dizesini ANAHTAR olarak değiştirirseniz, PHP'nin strpos () işlevi büyük/küçük harfe duyarlı olduğundan bir eşleşme bulamaz. Sonuç bir boolean false olur.

Örnek 3. Sıfır konumunda giriş. Fonksiyonun sonucunu kontrol ederken katı eşitlik kullanmak önemlidir, aksi takdirde yanlış bir sonuç alabilirsiniz.

İlk iki kontrol, hayat orijinal cankurtaranın bir parçası olsa bile hiçbir olay olmadığını belirleyecektir.

Örnek 4. $ offset parametresini kullanarak başlangıç ​​konumunu dengeleyin.

Ofseti 3'e ayarladıktan sonra arama "e" karakteriyle başlar.

Web siteleri statik ve dinamik olarak ikiye ayrılabilir. İnternette güzel bir kartvizit oluşturmayı mümkün kılan HTML ve CSS'de uzmanlaştıktan sonra, birçok kişi PHP'de nasıl dinamik bir web sitesi oluşturulacağını düşünür. Aynı zamanda, mizanpaj tasarımcısı artık web programlamayı öğrenmeye başladığını da hesaba katmalıdır: site ile çalışma prensipleri farklı olacaktır. PHP'de yeni başlayanların karşılaştığı ilk sorunlardan biri dizelerle çalışmak, onları okumak ve işlemek.

PHP'nin çok sayıda yöntem içerdiğini belirtmekte fayda var, bu nedenle bunları bir dize görüntüleme, bir alt dize bulma, alma veya değiştirme, büyük/küçük harf değiştirme ve bir dizenin uzunluğunu döndürme gibi en basit manipülasyonlarla çalışmaya başlamaya değer. Birçok işlev Kiril karakterleriyle iyi çalışmaz. Bu nedenle, tüm örnekler anlaşılır olması için İngilizce olarak yazılmıştır. Kiril dizeleri için aynı işlevler kullanılır, ancak mb_ önekiyle (örneğin, mb_strpos ()). Analogları kullanmadan önce, php.ini'de sadece noktalı virgülü kaldırarak extension = php_mbstring.dll satırının yorumunu kaldırmak gerekir.

Dize oluşturma ve çıktı

İyi bilinen dil yapısı yankısını kullanarak dizenin çıktısını ekrana analiz edeceğiz. Programcı satırın çıktısını bir kerede verebilir:

echo "Bu Yeni Bir Satır"

veya önce bir değişken oluşturun ve ardından onu görüntüleyin:

$ str = "Bu Yeni Bir Satır";

Birinde birkaç satır görüntülemeniz gerekiyorsa, birleştirmelerine başvururlar:

yankı "Bu". "Yeni". " Hat";

$str1 = "Bu";

$str2 = "Yeni";

$str3 = "Dize";

yankı $str1. $ str2. $str3;

İkinci durumda, ekran görüntülenecektir Bu bir NewString... Yankı çağrılırken boşluk hemen eklenebilir:

yankı $str1. "". $ str2. "". $str3;

Bu durumda ekranda "Bu Yeni Bir Hattır" mesajı görüntülenecektir. Birleştirme yalnızca çıktı alırken değil, aynı zamanda bir dize oluştururken de mümkündür:

$str1 = "Bu";

$str2 = "Yeni";

$str3 = "Dize";

$ dize = $ str1. "". $ str2. "". $str3;

yankı $ dizi;

Echo, hem Kiril hem de Kiril alfabesini görüntüler. Değişkenlerden biri bir sayı içeriyorsa, birleştirme sırasında bu sayı karşılık gelen dizeye dönüştürülür:

$ toplam = $ ben + $ ben; // şimdi $ toplamı 4 sayısını içeriyor

yankı $ i. "+" $ ı. "=". $ toplamı;

Ekran şunu gösterecektir: "2 + 2 = 4".

Servis sembolleri

Diyelim ki bir dizge ($ dizgi = "Bunun gibi") ile tanımlandı. Ardından kaçış dizilerini güvenle kullanabilirsiniz:

  • \ n satır besleme yapar;
  • \ r şapkayı döndürür;
  • \ "çift tırnaktan kaçar:
    • echo "\" çift \ "tırnak" içeren dize; // "çift" tırnaklı dize
  • \ $ dolardan kaçar;
  • \\ ters eğik çizgilerden kaçar.

Daha birçok dizi var, hepsi resmi PHP belgelerinde bulunabilir.

Bir alt dizenin ilk oluşumunun konumu nasıl bulunur?

Diyelim ki basit bir çizgimiz var:

Ayrıca isimleri olan iki satırımız var:

$ isim = "Yemelyan";

$ başkaAd = "Katherin";

İlk satırın bu iki ismi içerip içermediğini bulmamız gerekiyor. Bunun için strpos ($ str, $ arama) işlevi kullanılır. Bu dize orijinal $ str içinde yer alıyorsa, aranan $ arama alt dizesinin konumunu döndürür. Aksi takdirde, işlev false boole değerini döndürür. Örneğin, strpos ($ string, $ otherName) false döndürür ve strpos ($ string, $ name) bir tamsayı döndürür. Kod şu şekilde olacaktır (konum ekrana geldiğinde bir değişken yazalım):

$ string = "Benim adım Yemelyan ve 27 yaşındayım";

$ isim = "Yemelyan";

$ başkaAd = "Katherin";

echo strpos ($ dize, $ başkaAd); // yanlış yazdıracak

echo strpos ($ dizgi, $ isim); // alt dizenin ilk oluşumunun konumunu görüntüler

Lütfen satır numaralandırmasının sıfırdan başladığını, yani bizim durumumuzda son satırın 11 sayısını çıkaracağını unutmayın (boşluklar da sayılır).

Bir alt dize ve tuzakların son oluşumunun konumunu bulma

strpos () işlevi ilk oluşumun konumunu döndürürse, ters strrpos () işlevi alt dizenin son oluşumunu arar.

Burada numaralandırmanın başlangıcıyla ilgili bazı tuzaklar var. Bu dikkate değer: PHP'de dizelerle çalışmak, karşılaştırmalardaki sınırlamalar nedeniyle karmaşık olabilir. Örneğin, olumsuzlanmış karşılaştırma operatörünü kullanmamak en iyisidir: strpos ($ str, $ search)! = False. PHP'nin herhangi bir sürümünde, böyle bir eşdeğeri olan örnekler doğru çalışmayabilir, çünkü satır numaralandırma sıfırdan başlar ve mantıksal yorumda 0 yanlıştır. Bu aynı zamanda strrpos() işlevi için de geçerlidir.

Bir alt dizenin oluşum sayısı nasıl bulunur?

Çoğu zaman, bir dizgede bir alt dizginin ilk veya son oluşumunun konumunu değil, bunların toplam sayısını bulmanız gerekir. Bunu yapmak için, en az iki değişkeni işleyen substr_count() işlevini kullanın: substr_count ($ str, $ search). Bir tamsayı döndürür. Arama alanını dizge ile azaltmak gerekirse, işleve iki değişken daha iletilir: sırasıyla dizgenin başı ve sonu. Yani, bu durumda fonksiyon şu şekilde adlandırılır: substr_count ($ str, $ search, $ start, $ end). İşlev, orijinal dize $ str'nin $ start ve $ end arasındaki $ search alt dizesini arayacaktır. Dize bulunamazsa, işlev sıfır döndürür.

PHP'de bir dizgenin durumu nasıl değiştirilir: örnekler

Büyük/küçük harf değiştirmek genellikle dizileri karşılaştırmak için kullanılır ve diyelim ki kullanıcı programda en yüce tanrının adını girmelidir, kullanıcının cevabının karşılaştırılacağı "Bir" seçeneği vardır. Girilen metin mevcut metinle eşleşmiyorsa (örneğin, kullanıcı "one" veya "ONE" yazarsa), program true yerine false döndürür. Bunu önlemek için büyük/küçük harf değiştirme işlevi kullanılır. Bu genellikle bir PHP sitesinde etiketler varsa kullanılır: "kişisel" ("Kişisel", "kişisel", "KİŞİSEL" vb.) kelimesinin yüzlerce çeşidi yerine, yalnızca bir küçük harf etiketi vardır.

strtolower () işlevi, büyük/küçük harfe değiştirir. Diyelim ki $ catName = "Fluffy" satırı var. strtolower ($ catName) işlevi "fuffy" dizesini döndürür. strtoupper () işlevini kullanarak büyük/küçük harf değiştirebilirsiniz.

PHP'de bir dizenin uzunluğu nasıl bulunur: işlevlerle çalışma

Genellikle bir dizenin uzunluğunu bulmak gerekir. Örneğin, PHP'de bir döngü oluşturmak için bu tür dizelerle çalışmak gerekebilir. Bir dize aramak için, bir sayı - karakter sayısı - döndüren strlen () işlevi kullanılır. Numaralandırma sıfırdan başladığı için son karakterin strlen ($ str) -1 sayısına sahip olacağını unutmayın.

PHP'de bir alt dize alma ve değiştirme: dizelerle çalışma

Alt dize, iki veya üç bağımsız değişken alabilen substr () işlevi tarafından alınır: substr ($ str, $ start, $ end). Diyelim ki $ string = "Fluffy cat" dizgemiz var ve ikinci karakterden dördüncü karaktere bir alt dizgi almak istiyoruz. Numaralandırma sıfırdan başladığından, bu alt dizili değişken şöyle görünecektir: $ newString = substr ($ string, 1, 4). $ newString = substr ($ string, 1) girersek, ikinci karakterden sonuncuya (yani, "luffy") alt dizeyi alırız. Bu kod, strlen (): substr ($ string, 1, strlen ($ string)) kullanan tam dize koduyla aynıdır.

Bir alt dizgiyi değiştirmek için, üç değişken alan str_replace () işlevi kullanılır: str_replace ($ subStr, $ newSub, $ str). Birçok işlevin aksine, str_replace () Kiril karakterleriyle doğru şekilde çalışır ve önek ile karşılığı yoktur. Örnek:

$ str = "Bugün hava çok kötü!";

$ newStr = str_replace ("korkunç", "harika", $str); // Bugün hava harika!

Bir dizeyi sayıya dönüştürme

Web programlamayı er ya da geç öğrenen herkes, bir diziyi bir sayıya çevirmek zorundadır. Bunu yapmak için iki benzer işlev kullanılır: intval () ve floatval (), her biri bir değişken, $ string kabul eder. Birbirlerinden yalnızca döndürülen veri türünde farklılık gösterirler: intval () bir tamsayı döndürür ve floatval () bir kayan noktalı sayı döndürür.

Hem intval () hem de floatval () kullanmak için, dize sayılarla başlamalıdır ve bunlar bir sayıya dönüştürülecektir. Rakamlardan sonra herhangi bir harf grubu gelirse, bunlar basitçe yok sayılır. Dizenin harflerle başlaması durumunda, işlevin kullanılması sıfır döndürür. İdeal olarak, dize yalnızca sayıları içermelidir.

Bir sayıyı dizeye dönüştürme

Sayıları dizgelere çevirmek genellikle gereklidir. Diyelim ki, bir sayının yarısını alıp karesini almanız gerekiyorsa (örneğin, eşitliğin doğru olup olmadığını kontrol edin: 88 x 88 + 33 x 33 = 8833). Bu durumda, sayı içeren bir dize döndüren strval () işlevi kullanılır. Bundan sonra, yeni dizeyle diğer tüm eylemleri gerçekleştirebilirsiniz: değişiklik, bir alt dizenin oluşumunu arama ve diğer işlevler. Gerekirse, dizge yukarıda açıklandığı şekilde tekrar bir sayıya dönüştürülebilir.

Bu makale, dizelerle ilgili tüm işlevlerin yalnızca küçük bir bölümünü kapsıyordu. Tanımlanmamış işlevlerin bazıları sembollerle çalışır, ancak çoğu, özgünlüklerinden dolayı materyale dahil edilmemiştir. Bu işlevleri tanımak için en son bilgileri gösteren resmi PHP belgelerine gitmeniz gerekir.

1.1K

PHP strpos işlevi, belirli bir dizede bir alt dize bulmak için kullanılır. Belirtilen alt dizenin ilk oluşumunun sayısal değerini döndürür.

strpos kullanmak için sözdizimi

PHP strpos işlevi aşağıdaki gibi kullanılır:

$ pozisyon = strpos ($ verilen_string, $ search_string);

Not: strpos işleviyle arama yaparken büyük/küçük harf duyarlıdır. Bu nedenle, “Test” ve “test” anahtar kelimelerinin aranması farklı sonuçlar verecektir.

Konum sayımı 1'den değil 0'dan başlar.

Örnek olarak demo sürümlerini kullanarak, belirli bir alt diziyi ve kullanıcı tarafından girilen bir değeri bulmak için bu işlevin kullanımını göstereceğim.

strpos işlevini kullanmanın basit bir örneği

PHP'nin strpos işlevinin nasıl çalıştığını göstermek için arama değerlerini kullandığım aşağıdaki örneğe göz atın:


Çevrimiçi demoyu ve kodu görüntüleyin

PHP kodu:

"; echo" Verilen alt dizin şurada bulundu: $ position ";)?>

strpos PHP örneği:

Dize arama terimini içerir: 'strpos'! Verilen alt dize şurada bulundu: 10

Kullanıcı tarafından girilen bir terimi bulmak için strpos kullanımına bir örnek

Bu yöntem, belirli senaryolarda yararlı olabilir. Örneğin, belirli kelimelerin bir forma girilmesine izin verilmediğinde.

Ayrıca, arama için kullanıcı tarafından belirtilen kelimenin orijinal dizide içerip içermediğini kontrol edebilirsiniz. Buna dayanarak, belirli sonuçları bir yanıt şeklinde görüntüleyebilirsiniz.

Bu demoda, kullanıcı metin kutusuna bir terim girebilir. Düğmeye tıklandıktan sonra, orijinal dizenin bir alt dize içerip içermediğini kontrol etmek için strpos işlevi çalıştırılır. İlgili mesaj ekranda görüntülenecektir:


Demo için aşağıdaki kaynak satırını kullandım:

$ source_string = "Bu demoda, strpos kullanarak string'in arama terimi içerip içermediğini kontrol etmek için kullanıcı tarafından girilen bir arama terimi kullanıyorum!";

İşlevin false döndürüp döndürmediğini görmek için farklı harfler deneyin veya sözcükleri arayın. Alternatif olarak, farkı görmek için terimleri büyük veya küçük harflerle yazmayı deneyin.

Bunun için aşağıdaki PHP strpos utf 8 örneği kullanıldı:

"; if ($ pozisyon === false) (echo" Kaynak dize şunları içermiyor: "$ search_term"! ";) else (echo" Dize arama terimini içeriyor: "$ search_term"!
"; echo" Verilen alt dize şurada bulundu: $ position ";) echo"

"; } ?>

Örnek olarak strpos PHP işaretlemesini de görebilirsiniz:

Tam sürüm demo sayfasının kaynak kodunda görülebilir.

Ayrıca, sitenizde bir arama motoru oluşturmak için bir veritabanını kaynak olarak kullanabilirsiniz.

Stripos işleviyle büyük/küçük harfe duyarsız arama

Belirtildiği gibi, PHP'nin strpos işlevi büyük/küçük harf duyarlıdır. Dizeleri büyük/küçük harfe duyarsız bir şekilde aramak için PHP stripos işlevini kullanın.

Sözdizimi strpos ile hemen hemen aynıdır:

$ pozisyon = şeritler ($ verilen_string, $ search_string);

Şimdi size stripoların nasıl çalıştığını göstereceğim.

Stripos işlevinin kullanıldığı örnek

Bu demoda, arama kaynağı şu dizedir:

$ source_string = "Bu, stringleri aramak için kullanılan bir stripos Tutorial'dır. Verilen bir stringin bir arama stringi içerip içermediğini söyler!";

Arama terimi: $ search_term = "öğretici";

Diyelim ki php kullanarak bir dizgede bir alt dizgi bulmamız gerekiyor.

Bu görev için farklı araçlar uygundur.

strpos işlevini kullanarak bir alt dize bulma

strpos işlevi, bir alt dizenin ilk oluşumunun konumunu döndürür.

$ dizge = "abc"; $ bul beni = "a"; $ konum = strpos ($ dizgem, $ beni bul); // === kullanıldığını unutmayın. "a" sıfır konumunda olduğundan, == kullanılması doğru bir // sonuç vermez. if ($ pos === false) (echo "Dize" $ findme "" $ mystring "" dizisinde bulunamadı;) else (echo "String" $ findme "dizgesinde bulundu" $ mystring ""; echo " $ pos ";) konumunda

İşlev, orijinal dizedeki alt dizenin ilk karakterinin sıra numarasını veya hiçbir şey bulunamazsa false değerini döndürür.

Bu işlev için büyük/küçük harfe duyarsız bir karşılığı vardır: stripos

Bu görev için başka bir işlev: strrpos. Alt dizenin son oluşumunu bulur.
Elbette, büyük/küçük harfe duyarsız bir varyantı da var: strripos

strpos işlevi amacınıza uygun değilse, başka bir araç bulun.
Ayrıca dizelerle çalışmak için bilmeniz gereken tonlarca işlev vardır: dizelerle çalışmak için işlevler.

preg_match işlevini kullanarak bir alt dize bulma

Bu işlev, normal bir ifade kullanarak bir alt dize arar.

Normal ifade, bir dizeyle eşleşen bir kalıptır. Birçok farklı dize aynı anda bir şablonla eşleşebilir.

Belirli bir alt dizeyi aramanız değil, normal bir ifade kullanılarak açıklanan özelliklere sahip tüm dizeleri bulmanız gerekiyorsa bunlar kullanışlıdır. Bu konuyu bilmek, dizelerle çalışma yeteneğinizi büyük ölçüde genişletir.