marts 3, 2022

PHP strcmp: sådan sammenlignes to strenge i PHP

under enhver programmering får du altid situationer, hvor du skal sammenligne værdier med hinanden, og hvis værdierne er boolske eller heltal, så er sammenligningen enkel.

men hvis du vil sammenligne strenge eller dele af strenge, så kan der være mere til sammenligningen, som f.eks.

funktionen sammenligner de to strenge og fortæller os, om den første streng er større eller mindre end den anden streng eller er lig med den anden streng.

PHP strcmp ()

PHP strcmp() er en indbygget funktion, der sammenligner to strenge. Funktionen strcmp () er binær-sikker og store og små bogstaver. Funktionen strcmp () bruges til at sammenligne to strenge. Strcmp () – funktionen er store og små sager, hvilket påpeger, at kapital og små sager vil blive behandlet forskelligt under sammenligningen.

syntaks

se følgende syntaks.

strcmp(string1, string2)

parametre

denne funktion accepterer to parametre, som er beskrevet nedenfor:

  1. string1 (obligatorisk): Denne parameter henviser til den første streng, der skal bruges i sammenligningen.
  2. string2 (obligatorisk): denne parameter henviser til den anden streng, der skal bruges i sammenligningen.

returværdi

funktionen returnerer den tilfældige heltalsværdi afhængigt af kampens tilstand, som er givet af:

  1. returnerer 0, hvis strengene er ens.
  2. returnerer en negativ værdi (< 0), hvis string2 er større end string1.
  3. returnerer en positiv værdi (> 0), hvis string1 er større end string2.

se følgende eksempel.

<?phpecho strcmp("AppDividend", "AppDividend");

se output.

➜ pro php app.php0 ➜ pro

lad os nu passere to forskellige strenge.

<?phpecho strcmp("Eleven", "Millie Bobby Brown");

se output.

➜ pro php app.php-8 ➜ pro

lad os nu tage et eksempel, hvor string1 er større end string2.

<?phpecho strcmp("Millie Bobby Brown", "Maddison");

se output.

➜ pro php app.php8 ➜ pro

så det er sådan, hvordan man sammenligner to strenge i PHP ved hjælp af strcmp () – funktionen.

== operator

den mest almindelige måde, du vil se sammenligne to strenge på, er simpelthen ved at bruge == operatoren. Hvis de to strenge er lig med hinanden, returnerer den sand.

<?php// Using the == operator, Strings match is printedif('KRUNAL' == 'krunal'){ echo 'Strings match.';} else { echo 'Strings do not match.';}

se output.

➜ pro php app.phpStrings do not match. ➜ pro

denne KODE Returnerer, at strenge ikke var i samme tilfælde. Det vil ikke matche.

hvis alle bogstaverne i en streng var i store bogstaver, vil dette returnere falsk, og at strengene ikke stemmer overens.

dette betyder, at vi ikke kan bruge = = – operatøren, når vi sammenligner strenge fra brugerindgange; selvom det første bogstav er store bogstaver, vil det stadig returnere falsk.

så vi er nødt til at bruge en anden funktion til at hjælpe med at sammenligne strengene.

PHP Sammenlign to strenge og returner forskellen

vi kan bruge funktionen similar_tekst (), som beregner ligheden mellem to strenge.

det beregner ligheden mellem to strenge beskrevet i Programmeringsklassikere: implementering af verdens bedste algoritmer af Oliver (ISBN 0-131-00413-1).

bemærk, at denne implementering ikke bruger en stak som i Olivers pseudokode, men rekursive opkald kan eller måske ikke fremskynde hele processen.

Bemærk også, at kompleksiteten af denne algoritme er O(N**3), hvor N er længden af den længste streng.

se følgende eksempel.

<?php$diff = similar_text('Krunal', 'Ankit', $perc);echo $diff;

se følgende output.

➜ pro php app.php1 ➜ pro

endelig er PHP strcmp() eksemplet forbi.

anbefalede indlæg

PHP str_split ()

PHP str_repeat()

objekt i PHP

grundlæggende i klassen i PHP

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.