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.
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".
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:
Sekvenser är mycket mer, du hittar dem alla i den officiella PHP-dokumentationen.
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å).
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.
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.
Ä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.
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.
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!
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.
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.