PHP: Arbeide med strenger.

nettsider kan deles inn i statiske og dynamiske.Etter å mestre HTML og CSS, som tillater å lage vakker visittkort på Internett, er det mange som tenker hvordan å skape et dynamisk nettsted i PHP.Denne koder må ta hensyn til at nå begynner han å lære webprogrammering: hvordan jobbe med området vil være annerledes.En av de første utfordringene nybegynner i PHP - arbeide med strenger, deres lesing og behandling.

er verdt å merke seg at i PHP strengfunksjoner innebære et stort antall metoder, slik at deres studie er å starte med de mest enkle manipulasjon slik som å skrive en streng, søk, skaffe eller erstatte en delstreng, endre saken, og returnere lengden av strengen.Mange av funksjonene virker ikke med kyrilliske tegn.Derfor er alle eksempler skrevet på engelsk for klarhet.For kyrillisk linjen bruker de samme funksjonene, men med prefikset mb_ (f.eks mb_strpos ()).Før du bruker analoger, i php.ini må du uncomment linjen; extension = php_mbstring.dll, ganske enkelt ved å fjerne semikolon.

Creation og linje

Vi analyserer strengen utgang med alle kjente språkkonstrukt ekko.En programmerer kan sette en linje rett:

echo "Dette nye Line"

eller først opprette en variabel, og deretter vise det:

$ str = "Dette er en ny streng";

echo $ str;

Hvis du vil vise flere linjer i en, så tydde til deres sammensetning:

echo "Det er det.""Ny"."String";

eller

$ str1 = "It";

$ str2 = "nytt";

$ str3 = "streng";

echo $ str1.$ Str2.$ Str3;

I sistnevnte tilfelle vil bli vist EtoNovayaStroka .Space kan legges umiddelbart av en samtale ekko:

echo $ str1.''.$ Str2.''.$ Str3;

I dette tilfellet, viser skjermen: "Dette er en ny linje."Sammenkobling er mulig ikke bare i produksjonen, men også å skape en streng:

$ str1 = "It";

$ str2 = "nytt";

$ str3 = "streng";

$ string = $ str1.''.$ Str2.''.$ Str3;

echo $ string;

Echo viser både bokstaver og kyrillisk.Hvis en av variablene som inneholder tall, når concatenating antallet vil bli konvertert til den aktuelle linjen:

$ i = 2;

$ sum = $ i + $ i;// $ Nå sum inneholder tallet 4

echo $ i."+".$ Jeg."=".$ Sum;

Du vil se: "2 + 2 = 4".

Service Denne symboler

For eksempel er streng definert av en dobbel-sitat ($ string = "Dette er hvordan").Deretter kan du ganske lykkelig bruke escape-sekvenser:

  • \ n begår et linjeskift;
  • \ r vognreturer;
  • \ "unnslipper de doble anførselstegn:
    • echo" Strengen \ "dobbel \" sitatene "; // streng med" dobbel "siterer
  • \ $ skjermer dollar;
  • \\ backslash rømming.

Strings mye mer, alt deres mulig å finne i offisielle dokumentasjonen av PHP

Finn posisjonen til første forekomst

Anta at vi har en enkel linje.

$ string = "Mitt navn er Yemelyan og jeg er27 år gammel ";

Vi har også to rader med navnene:

$ name =" Yemelyan ";

$ anotherName =" Katherin ";

Vi trenger å vite om den første raden ito navn. For å gjøre dette, bruke funksjons strpos ($ str, $ søk). Den returnerer posisjonen til den ønskede treng $ søk, hvis strengen er inneholdt i den første, $ str.Ellers returnerer funksjonen en boolsk verdi til false.For eksempel strpos ($ string, $ anotherName) returnerer false, og strpos ($ string, $ navn) - et heltall.Koden vil være det (skrive alternativ, der posisjonen vises):

$ string = "Mitt navn er Yemelyan og jeg er 27 år gammel";

$ name = "Yemelyan";

$ anotherName = "Katherin";

ekko strpos ($ string, $ anotherName);// Utganger falsk

echo strpos ($ string, $ navn);// Viser posisjonen av første forekomst

Legg merke til at linjen nummereringen starter på null, det vil si i dette tilfelle den siste linjen vil vise hvor mange 11 (mellomrom er også vurdert).

søk stillingen for den siste forekomsten av en delstreng og fallgruver

Hvis strpos () returnerer posisjonen til den første forekomsten, den inverse funksjonen strrpos () søker etter den siste forekomsten av en delstreng.

Det er noen fallgruver forbundet med begynnelsen av nummereringen.Det bør ta hensyn til: I PHP arbeidet med linjer kan være komplisert ved begrensninger i sammenligninger.Så det er bedre å ikke bruke en sammenligning operasjon med en negasjon: strpos ($ str, $ søk) = False.I noen versjon av PHP med eksempler på slik likeverdighet kanskje ikke riktig, fordi linjen nummereringen starter på null, og 0 i den logiske tolkning er falsk.Dette gjelder også for funksjons strrpos ().

Hvordan finne en rekke forekomster av en delstreng

ofte ikke trenger å finne posisjonen til den første eller siste forekomsten av en delstreng i en streng, og deres totale antallet.For å gjøre dette, kan du bruke funksjonen substr_count (), som håndterer minst to variabler: substr_count ($ str, $ søk).Den returnerer et heltall.Hvis du ønsker å redusere omfanget av søket på linjen, blir funksjonen passert to variabler: begynnelsen og slutten av linjen, hhv.Det vil si at funksjonen i dette tilfellet kalles som: substr_count ($ str, $ søk, $ start, $ slutten).Funksjonen vil søke substrengen $ søk i området fra $ begynne å $ slutten av strengen $ str.Dersom strengen ikke blir funnet, returnerer funksjonen null.

Hvordan endre tilfelle av strengen i PHP: Eksempler

Endre tilfelle blir ofte brukt til å sammenligne strenger og betinget utsagn.For eksempel, må brukeren skrive inn navnet på den øverste gud i norrøn mytologi.Programmet er en versjon av "One", som vil bli sammenlignet og brukerens svar.Hvis teksten inngikk ikke samsvarer med tilgjengelig (for eksempel, skriver brukeren en "one" eller "en"), vil programmet return false istedenfor sant.For å unngå dette, kan du bruke funksjonen endrer saken.Det er ofte brukt om området er i PHP tags: i stedet for hundrevis av varianter av ordet "privat" (. "Private", "privat", "personlig" og så videre N.) Det finnes bare en tag med små bokstaver.

strtolower () funksjonen endrer saken til lavere.La oss ha en streng $ catName = "Fluffy".Funksjon strtolower ($ catName) returnerer strengen "fluffy".Endre saken til øvre, kan du bruke funksjonen strtoupper ().

Hvordan finne lengden av strengen i PHP: Arbeide med funksjoner

ofte kreves for å finne lengden av strengen.For eksempel kan i PHP arbeide med strenger av denne type være nødvendig i skapelsen syklus.For å søke etter en streng funksjonen brukes strlen (), som returnerer et tall - antall tegn.Vi må ikke glemme at det siste tegnet vil ha en rekke strlen ($ str) -1, som nummereringen starter med null.

Produksjon og utskifting av en substring i PHP: Arbeide med strenger

Får treng funksjon utføres substr (), som kan ta to eller tre argumenter: substr ($ str, $ start, $ slutten).La oss si at vi har en streng $ string = "Fluffy katt", og vi ønsker å få en delstreng fra andre til fjerde tegnet.Siden nummereringen starter på null, vil den variable med at treng se slik ut: $ newString = substr ($ string, 1, 4).Hvis vi introdusere $ newString = substr ($ string, 1), får vi en delstreng fra andre til det siste tegnet (dvs. "Ruffy").Denne kode er identisk med den fullstendige kodestreng ved hjelp strlen (): substr ($ streng, 1, strlen ($ string)).

brukt til å erstatte treng funksjon str_replace (), som tar tre variabler: str_replace ($ substr, $ newSub, $ str).I motsetning til mange funksjoner, str_replace () fungerer riktig med kyrilliske tegn, og har ingen motpart med prefikset.Eksempel:

$ str =; "I dag forferdelig vær!"

$ newStr = str_replace ("forferdelig", "fantastisk", $ str);// I dag, flott vær!

Oversettelse strengen til en rekke

Alle som studerer web-programmering, før eller senere må oversette strengen til et tall.For dette formål er to lignende funksjoner: intval () og floatval (), som hver tar en variabel $ streng.Fra hverandre de skiller seg bare i den type data som returneres: intval () returnerer et heltall, og floatval () - flyttall.

for bruk intval (), og floatval () krever at linjen starter med et tall, og de vil bli konvertert til et tall.Hvis tallene vil gå noen sett av bokstaver, de bare ignorere det.I dette tilfellet, hvis linjen begynner med bokstavene, vil bruken av funksjonen returnere null.Ideelt sett må linjen bare inneholde sifre.

Oversettelse av en streng

ofte nødvendig for å overføre nummeret til en streng.For eksempel, hvis du ønsker å ta halvparten av det og å oppføre en square (for eksempel sjekke om likestilling: 88 x 88 x 33 + 33 = 8833).I dette tilfelle er funksjonen strval (), som returnerer en streng med nummeret.Etter dette en ny linje, kan du utføre alle andre handlinger: edit, søke etter forekomsten av treng, og andre funksjoner.Om nødvendig kan linen bli re-overført til de som allerede er beskrevet ovenfor.

Artikkelen ble ansett bare en liten del av alle funksjoner knyttet til strenger.Dele ubeskrevne funksjoner som arbeider med tegn, men de fleste har ikke vært inkludert i materialet på grunn av spesifisiteten.Hvis du vil se disse funksjonene trenger for å fortsette å lese den offisielle dokumentasjonen på PHP, som viser oppdatert informasjon.