PHP: lucrul cu șiruri de caractere. Funcții de șir PHP

Site-urile pot fi împărțite în statice și dinamice. După mastering HTML și CSS, care vă permit să faceți o carte de vizită frumoasă pe Internet, mulți oameni se gândesc cum să creeze un site dinamic în PHP. În același timp, aspectul ar trebui să țină seama de faptul că acum începe să studieze programarea web: principiile de lucru cu site-ul vor fi diferite. Una dintre primele probleme cu care se confruntă un începător în PHP este lucrul cu șiruri de caractere, citirea și prelucrarea acestora.

PHP lucrează cu șiruri de caractereEste demn de remarcat faptul că în PHP String funcții implică un număr mare de metode, astfel încât începerea studiului lor este cu cele mai simple manipulări, cum ar fi ieșirea unui șir, căutarea, obținerea sau înlocuirea unui substring, schimbarea registrului și returnarea lungimii șirului. Multe funcții nu funcționează bine cu caracterele chirilice. Prin urmare, toate exemplele sunt scrise în engleză pentru claritate. Pentru șirurile chirilice, se folosesc aceleași funcții, dar cu prefixul mb_ (de exemplu, mb_strpos ()). Înainte de a utiliza analogii, trebuie să dezarhivați linia -extension = php_mbstring.dll în php.ini prin eliminarea pur și simplu a punct și virgulă.

Crearea și afișarea unui șir

Vom analiza rezultatul șirului pe ecran utilizând constructul familiar al ecoului. Un programator poate afișa simultan un șir:

ecou "Acesta este noul șir"

sau mai întâi să creezi o variabilă și apoi să o afișezi pe ecran:

$ str = "Acesta este noul șir";

echo $ str;

Dacă trebuie să afișați mai multe linii într-una, atunci recurg la concatenarea lor:

echo "Este". „Nou“. "String" -

sau

$ str1 = "Acest" -

$ str2 = "Nou" -

$ str3 = "String" -

echo $ str1. $ str2. $ str3-

În acest din urmă caz, va fi afișat ecranul Acesta este NewString. Puteți adăuga imediat un spațiu apelând ecou:

echo $ str1. ``. $ str2. ``. $ str3-

În acest caz, ecranul va afișa: "Aceasta este noua linie". Concatenarea este posibilă nu numai la ieșirea, ci și la crearea unui șir:

$ str1 = "Acest" -

$ str2 = "Nou" -

$ str3 = "String" -

$ string =$ str1. ``. $ str2. ``. $ str3-

echo $ string-

Echo afișează ambele Litere latine, și chirilică. Dacă una dintre variabile conține un număr, atunci la concatenare acest număr va fi convertit la linia corespunzătoare:

$ i = 2-

$ sum = $ i + $ i- // acum suma $ conține numărul 4

echo $ i. "+". $ i. "=". $ sum-

Ecranul va afișa: "2 + 2 = 4".

site pe php

Simboluri de serviciu

Să presupunem că un șir este definit folosind ghilimele duble ($ string = "That`s it"). Apoi puteți folosi secvențele de control destul de calm:

  • n efectuează o ruptură de linie;
  • întoarce carul;
  • "scapă de citatele duble:
  • echo "Un șir cu " citate dublă "- // Un șir cu" citate dublă "
  • $ scuturează dolarul;
  • scapă de backslash.


  • Secvențele sunt mult mai multe, le puteți găsi toate în documentația oficială PHP.

    Cum se găsește poziția primei apariții a unui substring

    Să presupunem că avem o linie simplă:

    $ string = "Numele meu este Yemelyan și am 27 de ani" -

    De asemenea, avem două linii cu numele:

    $ name = "Yemelyan" -

    $ anotherName = "Katherin" -

    Trebuie să aflăm dacă primul rând conține aceste două nume. Pentru aceasta, utilizați funcția strpos ($ str, $ search). Aceasta returnează poziția căsuței de căutare search $, dacă această linie este inclusă în original, $ str. În caz contrar, funcția returnează o valoare booleană a false. De exemplu, strpos ($ string, $ anotherName) returnează false, iar strpos ($ string, $ name) este un număr întreg. Codul va fi astfel (vom scrie varianta atunci când poziția este afișată pe ecran):

    $ string = "Numele meu este Yemelyan și am 27 de ani" -

    $ name = "Yemelyan" -

    $ anotherName = "Katherin" -

    echo strpos ($ string, $ anotherName) - // print false

    echo strpos ($ string, $ name) - // imprimă poziția primei apariții a subrecursului

    Rețineți că numerotarea liniilor începe de la zero, adică, în cazul nostru, ultima linie va imprima numărul 11 ​​(se iau în considerare și spațiile).

    Găsirea poziției ultimelor apariții de substringuri și capcane

    Dacă funcția strpos () returnează poziția primei apariții, atunci funcția inversă strrpos () caută ultima apariție a substringului.

    Există câteva capcane asociate cu începutul numerotării. Acest lucru merită luat în considerare: în PHP, lucrul cu șiruri poate fi complicat de limitări în comparații. Deci, este mai bine să nu folosiți operația de comparare cu negație: strpos ($ str, $ search)! = False. În orice versiune de PHP, exemplele cu un astfel de echivalent ar putea să nu funcționeze corect, deoarece numerotarea liniilor începe de la zero, iar în interpretarea logică 0 este falsă. Acest lucru se aplică și funcției strrpos ().

    Cum se găsește numărul de apariții ale unui substring

    Adesea este necesar să nu găsim poziția primei sau ultimei apariții a unui substring într-un șir, ci numărul total de substringuri. Pentru a face acest lucru, utilizați funcția substr_count (), care procesează cel puțin două variabile: substr_count ($ str, $ search). Returnează un număr întreg. Dacă doriți să reduceți zona de căutare printr-un șir, vor fi transmise mai multe variabile la funcția respectiv: începutul și sfârșitul liniei. Asta este, funcția în acest caz este numită astfel: substr_count ($ str, $ search, $ start, $ end). Funcția va căuta o căutare subreversă $ în intervalul de la $ start la $ end al șirului original $ str. Dacă șirul nu este găsit, funcția va reveni la zero.

    programare web

    Cum se poate schimba cazul unui șir în PHP: exemple

    Schimbarea registrului este adesea folosită pentru a compara șiruri de caractere și operatorii condiționali. Să presupunem că utilizatorul trebuie să introducă numele zeului suprem în Mitologie scandinavă. Programul are opțiunea "One", cu care răspunsul utilizatorului va fi comparat. În cazul în care textul introdus nu se potrivește cu cel pe care îl aveți (de exemplu, utilizatorul va scrie "unul" sau "ONE"), programul va reveni fals în loc de adevărat. Pentru a evita acest lucru, se folosește funcția de schimbare a registrelor. Acest lucru este adesea folosit dacă site-ul din PHP are etichete: în loc de sute de variante ale cuvântului "personal" ("personal", "personal", "personal" etc.), există o singură etichetă în litere mici.

    Funcția strtolower () schimbă cazul în cel inferior. Să presupunem că există o linie $ catName = "Fluffy". Funcția strtolower ($ catName) returnează șirul "pufos". Schimbați registrul pe cel superior utilizând funcția strtoupper ().

    Cum se găsește lungimea unui șir în PHP: lucrul cu funcții

    Este adesea necesar să găsiți lungimea unui șir. De exemplu, în PHP, este posibil să aveți nevoie să lucrați cu linii de acest fel pentru a crea o buclă. Pentru a găsi un șir, utilizați funcția strlen (), care returnează un număr - numărul de caractere. Nu trebuie să uităm că ultimul caracter va avea numărul strlen ($ str) -1, deoarece numerotarea începe de la zero.

    php work

    Obținerea și înlocuirea substringurilor în PHP: lucrul cu șiruri de caractere

    Substringul este obținut prin substr (), care poate lua două sau trei argumente: substr ($ str, $ start, $ end). Să presupunem că avem stringul $ string = "Pisică pufos" și dorim să obținem un substring de la al doilea la al patrulea caracter. Deoarece numerotarea începe de la zero, variabila cu această subcrasă va arăta astfel: $ newString = substr ($ string, 1, 4). Dacă introducem $ newString = substr ($ string, 1), obținem un substring de la al doilea caracter la ultimul caracter (adică "luffy"). Acest cod este identic cu codul liniei întregi folosind strlen (): substr ($ string, 1, strlen ($ string)).

    Pentru a înlocui un substring, utilizați funcția str_replace (), care ia trei variabile: str_replace ($ subStr, $ newSub, $ str). Spre deosebire de multe funcții, str_replace () funcționează corect cu simbolurile chirilic și nu are un analog cu un prefix. exemplu:

    $ str = "Astăzi este vreme groaznică!" -

    $ newStr = str_replace ("îngrozitor", "minunat", $ str) - // Vremea minunată a zilei!

    Traducerea unui șir la un număr

    php exempleToți cei care studiază programarea web mai devreme sau mai târziu trebuie să traducă un șir într-un număr. Pentru aceasta, se folosesc două funcții similare: intval () și floatval (), fiecare dintre ele având o variabilă $ string. Ele diferă una de alta numai în tipul de date returnate: intval () returnează un număr întreg, iar floatval () este un număr în virgulă mobilă.

    Pentru a utiliza atât intll () cât și floatval (), este necesar ca șirul să înceapă cu cifre și acestea vor fi convertite într-un număr. Dacă după cifre se trimite un set de litere, ele sunt pur și simplu ignorate. În cazul în care șirul începe cu litere, utilizarea funcției va reveni la zero. În mod ideal, linia trebuie să conțină numai numere.

    Conversia unui număr într-un șir

    Adesea, trebuie să traduceți numerele într-un șir. Spuneți dacă trebuie să luați jumătate din număr și să-l ocupați (de exemplu, verificați dacă egalitatea este îndeplinită: 88 x 88 + 33 x 33 = 8833). În acest caz, este utilizată funcția strval (), care returnează un șir cu un număr. După aceasta, puteți efectua toate celelalte acțiuni cu noua linie: modificați, căutați apariția substringului și alte funcții. Dacă este necesar, linia poate fi tradusă din nou într-un număr deja descris în modul de mai sus.

    php funcții șirÎn articol, au fost luate în considerare doar o mică parte din toate funcțiile legate de șiruri de caractere. Unele dintre funcțiile descrise funcționează cu simboluri, dar una mare nu a fost inclusă în material datorită specificității. Pentru a vă familiariza cu aceste funcții, trebuie să accesați documentația oficială PHP, care afișează cele mai recente informații.

    Distribuiți pe rețelele sociale:

    înrudit
Accord Dm7. Descrierea și declarația degetelor de pe flancAccord Dm7. Descrierea și declarația degetelor de pe flanc
7-String chitară: tuning, istorie, design și caracteristici de joc7-String chitară: tuning, istorie, design și caracteristici de joc
Delphi postează în PascalDelphi postează în Pascal
Java: expresii regulate, caractere specialeJava: expresii regulate, caractere speciale
Strings Elixir: recenzii și recenziiStrings Elixir: recenzii și recenzii
String operator în Pascal - șirString operator în Pascal - șir
Practica PHP: comparație șirPractica PHP: comparație șir
PHP: expresii regulate, funcția preg Match allPHP: expresii regulate, funcția preg Match all
Funcția SQL SUBSTRINGFuncția SQL SUBSTRING
Folosind indexOf (jаvascript) atunci când lucrați cu matrice și șiruri de caractereFolosind indexOf (jаvascript) atunci când lucrați cu matrice și șiruri de caractere
» » PHP: lucrul cu șiruri de caractere. Funcții de șir PHP