martie 3, 2022

PHP strcmp: cum se compară două șiruri în PHP

în timpul oricărei programări, veți obține întotdeauna situații în care trebuie să comparați valori între ele, iar dacă valorile sunt booleene sau întregi, atunci comparația este simplă.

dar dacă doriți să comparați șiruri sau părți de șiruri, atunci pot exista mai multe comparații, cum ar fi un caz al șirului pe care îl comparați.

funcția compară cele două șiruri și ne spune dacă primul șir este mai mare sau mai mic decât al doilea șir sau este egal cu al doilea șir.

PHP strcmp ()

PHP STRCMP() este o funcție încorporată care compară două șiruri de caractere. Funcția strcmp () este binară sigură și sensibilă la majuscule și minuscule. Funcția strcmp () este utilizată pentru a compara două șiruri. Funcția strcmp () este sensibilă la majuscule, ceea ce subliniază că cazurile de capital și mici vor fi tratate diferit în timpul comparației.

sintaxă

a se vedea următoarea sintaxă.

strcmp(string1, string2)

parametri

această funcție acceptă doi parametri, care sunt descriși mai jos:

  1. string1 (obligatoriu): Acest parametru se referă la primul șir care va fi utilizat în comparație.
  2. string2 (obligatoriu): acest parametru se referă la al doilea șir care va fi utilizat în comparație.

valoare returnată

funcția returnează valoarea întreagă aleatorie în funcție de starea meciului, care este dată de:

  1. returnează 0 dacă șirurile sunt egale.
  2. returnează o valoare negativă (< 0), dacă șirul2 este mai mare decât șirul1.
  3. returnează o valoare pozitivă (> 0) dacă șirul1 este mai mare decât șirul2.

a se vedea exemplul următor.

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

vedeți ieșirea.

➜ pro php app.php0 ➜ pro

acum, să trecem două șiruri diferite.

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

a se vedea ieșirea.

➜ pro php app.php-8 ➜ pro

acum, să luăm un exemplu în care șirul1 este mai mare decât șirul2.

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

vedeți ieșirea.

➜ pro php app.php8 ➜ pro

deci, acesta este modul de a compara două șiruri în PHP folosind funcția strcmp ().

== operator

cel mai comun mod în care veți vedea compararea a două șiruri este pur și simplu folosind operatorul==. Dacă cele două șiruri sunt egale între ele, atunci returnează true.

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

a se vedea ieșirea.

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

acest cod va returna că șirurile nu au fost în același caz. Nu se va potrivi.

dacă toate literele dintr-un șir au fost majuscule, atunci acest lucru va reveni fals și că șirurile nu se potrivesc.

aceasta înseamnă că nu putem folosi operatorul == atunci când comparăm șiruri de la intrările utilizatorului; chiar dacă prima literă este majusculă, aceasta va reveni în continuare falsă.

deci, trebuie să folosim o altă funcție pentru a ajuta la compararea șirurilor.

PHP compară două șiruri și returnează diferența

putem folosi funcția similar_text (), care calculează asemănarea dintre două șiruri.

calculează similitudinea dintre două șiruri descrise în clasicele de programare: implementarea celor mai buni algoritmi din lume de Oliver (ISBN 0-131-00413-1).

rețineți că această implementare nu utilizează o stivă ca în pseudocodul lui Oliver, dar apelurile recursive pot accelera sau nu întregul proces.

rețineți, de asemenea, că complexitatea acestui algoritm este O(N**3), Unde N este lungimea celui mai lung șir.

a se vedea exemplul următor.

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

a se vedea următoarea ieșire.

➜ pro php app.php1 ➜ pro

în cele din urmă, PHP strcmp() exemplu este de peste.

posturi recomandate

PHP STR_SPLIT ()

PHP STR_REPEAT ()

obiect în PHP

elementele de bază ale clasei în PHP

Lasă un răspuns

Adresa ta de email nu va fi publicată.