SITE SEARCH

PHP: arbetar med strängar. PHP strängfunktioner

Sidor kan delas in i statisk ochdynamisk. Efter att ha masterat HTML och CSS, som låter dig göra ett vackert visitkort på Internet, tänker många på hur man skapar en dynamisk webbplats i PHP. I denna kodare måste ta hänsyn till att han nu börjar lära webbprogrammering: hur man arbetar med webbplatsen kommer att vara annorlunda. Ett av de första problemen som en nybörjare i PHP står inför är att arbeta med strängar, läsa och bearbeta dem.

PHP arbetar med strängar
Det är värt att notera att i PHP fungerar arbetet medlinjer involverar ett stort antal metoder, så att starta sina studiekostnader med några enkla manipulationer, såsom avdragsledningen, söka, erhålla eller ersätta en delsträng, registrera förändringar och återgå till linjelängden. Många funktioner fungerar inte bra med kyrilliska tecken. Därför skrivs alla exempel på engelska för tydlighet. För Cyrilliska strängar används samma funktioner, men med prefixet mb_ (till exempel mb_strpos ()). Innan du använder analoger i php.ini måste Avkommentera linjen, extension = php_mbstring.dll, helt enkelt genom att ta bort semikolon.

Skapa och visa en sträng

Vi kommer att analysera utsignalen från strängen till skärmen med hjälp av den välbekanta ekotalskonstruktionen. En programmerare kan mata ut en sträng på en gång:

eko "This is New String"

eller först skapa en variabel och visa sedan den på skärmen:

$ str = "Detta är den nya strängen";

echo $ str;

Om du behöver visa flera rader i en, så tillgriper de till sin sammanfattning:

eko "det". "Ny". "String";

eller

$ str1 = "This";

$ str2 = "nytt";

$ str3 = "String";

echo $ str1. $ str2. $ str3;

I det senare fallet visas skärmen Det här är NewString. Du kan lägga till ett mellanslag omedelbart genom att ringa echo:

echo $ str1. "". $ str2. "". $ str3;

I det här fallet kommer skärmen att visas: "Detta är den nya raden". Sammankoppling är möjlig, inte bara vid utmatning, men också när man skapar en sträng:

$ str1 = "This";

$ str2 = "nytt";

$ str3 = "String";

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

echo $ string;

Echo visar både latinska bokstäver och kyrilliska bokstäver. Om en av variablerna innehöll ett tal, omvandlas det här numret till motsvarande linje:

$ i = 2;

$ sum = $ i + $ i; // nu $ summan innehåller numret 4

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

Skärmen kommer att visa: "2 + 2 = 4".

plats på php

Tjänstesymboler

Låt oss säga att en sträng definieras med dubbla citat ($ string = "Det är det"). Då kan du använda kontrollsekvenserna ganska lugnt:

  • \ n utför en radbrytning
  • returnerar vagnen;
  • \ "undviker dubbla citat:
    • echo "En sträng med \" dubbel citat "; // En sträng med dubbla citat
  • $ skyddar dollarn
  • \\ undviker backslash.

Sekvenser är mycket mer, du hittar dem alla i den officiella PHP-dokumentationen.

Hur man hittar positionen för den första förekomsten av en substring

Låt oss säga att vi har en enkel linje:

$ string = "Jag heter Yemelyan och jag är 27 år gammal";

Vi har också två linjer med namnen:

$ name = "Yemelyan";

$ anotherName = "Katherin";

Vi måste ta reda på om den första raden innehållerdessa två namn. För att göra detta, använd funktionen strpos ($ str, $ search). Den returnerar positionen för söksträngen $ search, om denna rad finns i originalet, $ str. Annars returnerar funktionen ett booleskt värde av falskt. Till exempel returnerar strpos ($ string, $ anotherName) false, och strpos ($ string, $ name) är ett heltal. Koden kommer att vara så här (vi skriver varianten när läget visas på skärmen):

$ string = "Jag heter Yemelyan och jag är 27 år gammal";

$ name = "Yemelyan";

$ anotherName = "Katherin";

echo strpos ($ string, $ anotherName); // skriv ut falskt

echo strpos ($ sträng, $ namn); // skriva ut positionen för den första förekomsten av substringen

Observera att linjenummereringen börjar från noll, det vill säga i vårt fall kommer den sista raden att skriva ut nummer 11 (mellanslag anses också).

Hitta positionen för de senaste händelserna av understrängar och fallgropar

Om funktionen strpos () returnerar positionen för den första händelsen, ser den inverse strrpos () -funktionen efter den sista förekomsten av substringen.

Det finns några fallgropar i samband medbörjan av numreringen. Det här är värt att överväga: i PHP kan man arbeta med strängar kompliceras av begränsningar i jämförelser. Så det är bättre att inte använda jämförelseoperationen med negation: strpos ($ str, $ search)! = False. I vilken version av PHP som helst kan exemplen med en sådan ekvivalent inte fungera korrekt, eftersom linjenummereringen börjar från noll och i den logiska tolkningen 0 är det felaktigt. Detta gäller även för strrpos () -funktionen.

Hur man hittar antalet förekomster av en substring

Ofta behöver du inte hitta positionen för den första ellerden sista förekomsten av en substring i en sträng och det totala antalet delsträngar. För att göra detta, använd funktionen substr_count (), som behandlar minst två variabler: substr_count ($ str, $ search). Returnerar ett heltal. Om du vill minska sökområdet med en sträng, skickas ytterligare två variabler till funktionen: respektive början och slutet av raden. Det betyder att funktionen i det här fallet kallas så: substr_count ($ str, $ search, $ start, $ end). Funktionen söker efter en substring $ sökning i intervallet från $ start till $ slutet av den ursprungliga strängen $ str. Om strängen inte hittas returnerar funktionen noll.

webbprogrammering

Så här ändrar du fallet med en sträng i PHP: exempel

Ändring av registret används ofta förjämförelse av strängar och villkorliga uttalanden. Antag att en användare ska ange namnet på den högste guden i skandinavisk mytologi. Programmet har alternativet "One", med vilket användarens svar kommer att jämföras. Om den inmatade texten inte matchar den du har (till exempel kommer användaren att skriva "ett" eller "ONE"), kommer programmet att returnera falskt istället för sant. För att undvika detta används registerändringsfunktionen. Detta används ofta om platsen är i PHP Taggar: Istället för hundratals varianter av ordet "privat" (.. "Privat", "privata", "personligt" och så vidare) finns det bara en tagg i gemener.

Funktionen strtolower () ändrar fallet till den nedre. Antag att det finns en rad $ catName = "Fluffy". Funktionen strtolower ($ catName) returnerar strängen "fluffig". Ändra registret till den övre med hjälp av strtoupper () -funktionen.

Hur man hittar längden på en sträng i PHP: arbetar med funktioner

Det är ofta nödvändigt att hitta längden på en sträng. Till exempel i PHP kan du behöva arbeta med linjer av detta slag när du skapar en slinga. För att hitta en sträng, använd funktionen strlen (), som returnerar ett tal - antalet tecken. Vi får inte glömma att den sista karaktären kommer att ha strlen ($ str) -1-talet, eftersom numreringen börjar från noll.

php arbete

Komma och byta substrängar i PHP: arbeta med strängar

Substrängen erhålles genom funktionensubstr (), som kan ta två eller tre argument: substr ($ str, $ start, $ end). Antag att vi har strängen $ string = "Fluffy cat", och vi vill få en substring från den andra till den fjärde tecknen. Eftersom numreringen börjar från noll kommer variabeln med denna substring att se ut så här: $ newString = substr ($ string, 1, 4). Om vi ​​införa $ newstring = substr ($ string, 1) får vi en träng från det andra till det sista tecknet (dvs "Luffy"). Denna kod är identisk med den fullständiga radkoden med hjälp av strlen (): substr ($ sträng, 1, strlen ($ sträng)).

För att ersätta en substring, använd funktionenstr_replace (), som tar tre variabler: str_replace ($ substr, $ NewSub, $ str). Till skillnad från många funktioner str_replace () fungerar korrekt med kyrilliska tecken och har ingen analog prefix. exempel:

$ str = "Idag är det hemskt väder!";

$ newStr = str_replace ("awful", "wonderful", $ str); // Idag är underbart väder!

Översätta en sträng till ett nummer

php-exempel
Alla som studerar webbprogrammering, tidigteller senare är det nödvändigt att översätta en sträng till ett tal. För detta ändamål är två liknande funktioner som används: intval () och floatval (), där var och en tar emot en variabel $ string. Från varandra, de skiljer sig endast genom den typ av data som returneras: intval () returnerar ett heltal, och floatval () - flyttal.

För att använda både intval () och floatval ()Det är nödvändigt att linjen börjar med siffrorna, och de kommer att konverteras till ett nummer. Om efter siffrorna någon uppsättning bokstäver går, ignoreras de helt enkelt. I händelse av att strängen börjar med bokstäver, kommer funktionen att returnera noll. Helst bör linjen innehålla endast siffror.

Konvertera ett tal till en sträng

Ofta behöver du översätta siffror till en sträng. Till exempel, om du vill ta hälften av det och att uppföra en kvadrat (till exempel kontrollera om ekvationen är uppfyllda: 88 x 88 + 33 x 33 = 8833). I detta fall används funktionen strval (), som returnerar en sträng med ett tal. Efter detta en ny linje, kan du utföra alla andra åtgärder: redigera, hitta en förekomst av trängen, och andra funktioner. Vid behov kan linjen översättas igen till ett nummer som redan beskrivits på ovanstående sätt.

php-strängfunktioner
I artikeln, bara en liten del av allafunktioner associerade med strängar. Några av de obeskrivna funktionerna fungerar med symboler, men en stor var inte med i materialet på grund av specificiteten. För att bekanta dig med dessa funktioner behöver du gå till den officiella PHP-dokumentationen, som visar den senaste informationen.

</ p>
  • utvärdering: