PHP: werken met strings. PHP String-functies

Sites kunnen worden onderverdeeld in statische endynamisch. Na het beheersen van HTML en CSS, waarmee je een mooi visitekaartje kunt maken op internet, denken veel mensen eraan hoe ze een dynamische site in PHP kunnen maken. Tegelijkertijd moet de lay-out er rekening mee houden dat hij nu begint met het programmeren van het web: de principes van het werken met de site zullen verschillen. Een van de eerste problemen waarmee een beginner in PHP wordt geconfronteerd, is werken met tekenreeksen, lezen en verwerken.

PHP werkt met strings
Het is vermeldenswaard dat in PHP-functies werken metstrings impliceren een groot aantal methoden, dus het starten van hun studie is met de eenvoudigste manipulaties, zoals het uitvoeren van een string, zoeken, krijgen of substitueren van een substring, het veranderen van het register en het retourneren van de lengte van de string. Veel functies werken niet goed met Cyrillische tekens. Daarom zijn alle voorbeelden voor de duidelijkheid in het Engels geschreven. Voor Cyrillische reeksen worden dezelfde functies gebruikt, maar dan met het voorvoegsel mb_ (bijvoorbeeld mb_strpos ()). Voordat je de analogen gebruikt, moet je in php.ini de regel uncomment; extension = php_mbstring.dll, alleen de puntkomma verwijderen.

Maken en weergeven van een string

We zullen de uitvoer van de string naar het scherm parsen met behulp van de bekende echotaalconstructie. Een programmeur kan een string tegelijk uitvoeren:

echo "Dit is een nieuwe string"

of maak eerst een variabele aan en geef deze vervolgens weer op het scherm:

$ str = "Dit is de nieuwe reeks";

echo $ str;

Als u meerdere regels in één moet weergeven, nemen ze hun concatenatie in:

echo "Het". "Nieuw". "String";

of

$ str1 = "Dit";

$ str2 = "Nieuw";

$ str3 = "String";

echo $ str1. $ str2. $ str3;

In het laatste geval wordt het scherm weergegeven Dit is de NewString. U kunt onmiddellijk een spatie toevoegen door een echo aan te roepen:

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

In dit geval verschijnt op het scherm: "Dit is de nieuwe lijn". Aaneenschakeling is niet alleen mogelijk bij het uitvoeren, maar ook bij het maken van een tekenreeks:

$ str1 = "Dit";

$ str2 = "Nieuw";

$ str3 = "String";

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

echo $ string;

Echo geeft zowel Latijnse letters als Cyrillische letters weer. Als een van de variabelen een getal bevat, wordt dit bij aaneenschakeling geconverteerd naar de bijbehorende regel:

$ i = 2;

$ sum = $ i + $ i; // nu bevat $ sum het getal 4

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

Het scherm toont: "2 + 2 = 4".

site op php

Dienst symbolen

Stel dat een tekenreeks wordt gedefinieerd met dubbele aanhalingstekens ($ string = "That's it"). Dan kunt u de controlesequenties vrij rustig gebruiken:

  • n verbindt een regeleinde;
  • r geeft de wagen terug;
  • "ontsnapt aan dubbele aanhalingstekens:
    • echo "Een string met" dubbele aanhalingstekens "; // Een reeks met dubbele aanhalingstekens
  • $ beschermt de dollar;
  • \ ontsnapt de backslash.

Sequenties zijn veel meer, je kunt ze allemaal vinden in de officiële PHP-documentatie.

Hoe de positie van het eerste voorkomen van een subtekenreeks te vinden

Laten we zeggen dat we een eenvoudige regel hebben:

$ string = "Mijn naam is Yemelyan en ik ben 27 jaar oud";

We hebben ook twee regels met de namen:

$ name = "Yemelyan";

$ anotherName = "Katherin";

We moeten uitzoeken of de eerste regel bevatdeze twee namen. Gebruik hiervoor de functie strpos ($ str, $ search). Het retourneert de positie van de zoekopdracht onder $ search, als deze regel is opgenomen in de originele, $ str. Anders retourneert de functie een Booleaanse waarde false. Strpos ($ string, $ anotherName) retourneert bijvoorbeeld false en strpos ($ string, $ name) is een geheel getal. De code zal zo zijn (we zullen de variant schrijven wanneer de positie op het scherm wordt weergegeven):

$ string = "Mijn naam is Yemelyan en ik ben 27 jaar oud";

$ name = "Yemelyan";

$ anotherName = "Katherin";

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

echo strpos ($ string, $ name); // print de positie van de eerste instantie van de subtekenreeks

Merk op dat de regelnummering begint bij nul, dat wil zeggen dat in ons geval de laatste regel het nummer 11 zal afdrukken (spaties worden ook overwogen).

De positie van de laatste occurrences van substrings en valkuilen vinden

Als de functie strpos () de positie van de eerste instantie retourneert, zoekt de functie inverse strrpos () naar de laatste instantie van de subtekenreeks.

Er zijn enkele valkuilen verbondenhet begin van de nummering. Dit is het overwegen waard: in PHP kan werken met tekenreeksen worden bemoeilijkt door beperkingen in vergelijkingen. Het is dus beter om de vergelijkingsbewerking met negatie niet te gebruiken: strpos ($ str, $ search)! = False. In elke versie van PHP werken voorbeelden met een dergelijk equivalent mogelijk niet correct, omdat de regelnummering begint bij nul en in de logische interpretatie 0 onwaar is. Dit geldt ook voor de functie strrpos ().

Hoe het aantal keren dat een subtekenreeks voorkomt te vinden

Vaak moet je niet de positie van de eerste ofhet laatste voorkomen van een substring in een string en het totale aantal substrings. Gebruik hiervoor de functie substr_count (), die ten minste twee variabelen verwerkt: substr_count ($ str, $ search). Retourneert een geheel getal. Als u het zoekgebied met een reeks wilt verkleinen, worden er nog twee variabelen aan de functie doorgegeven: respectievelijk het begin en het einde van de regel. Dat wil zeggen dat de functie in dit geval zo wordt genoemd: substr_count ($ str, $ search, $ start, $ end). De functie zoekt naar een substring $ search in het interval van $ start tot $ end van de originele tekenreeks $ str. Als de tekenreeks niet wordt gevonden, retourneert de functie nul.

web programmeren

Hoe het geval van een string in PHP te veranderen: voorbeelden

Verandering van het register wordt vaak gebruikt voorvergelijking van strings en voorwaardelijke statements. Stel dat een gebruiker de naam van de oppergod moet invoeren in de Scandinavische mythologie. Het programma heeft de optie "One", waarmee het antwoord van de gebruiker wordt vergeleken. Als de ingevoerde tekst er anders zal zijn van de bestaande (bijvoorbeeld een gebruiker schrijft een "een" of "één"), zal het programma return false in plaats van true. Om dit te voorkomen, wordt de registerwijzigingsfunctie gebruikt. Dit wordt vaak gebruikt als de site is in PHP tags: In plaats van honderden varianten van het woord "privé" (.. "Private", "privé", "persoonlijke" en ga zo maar door) is er slechts één tag in kleine letters.

De strtolower () functie verandert de case naar de onderste. Stel dat er een regel $ catName = "Fluffy" is. De strtolower ($ catName) functie retourneert de string "fluffy". Wijzig het register in het bovenste met de functie strtoupper ().

Hoe de lengte van een string in PHP te vinden: werken met functies

Het is vaak nodig om de lengte van een string te vinden. In PHP moet u bijvoorbeeld met dit soort lijnen werken om een ​​lus te maken. Gebruik de functie strlen () om een ​​string te vinden, waarbij een getal wordt geretourneerd: het aantal tekens. We moeten niet vergeten dat het laatste karakter het strlen ($ str) -1-getal heeft, omdat de nummering begint bij nul.

php werk

Substrings verkrijgen en vervangen in PHP: werken met tekenreeksen

De substring wordt verkregen door de functiesubstr (), waarvoor twee of drie argumenten kunnen worden gebruikt: substr ($ str, $ start, $ end). Stel dat we de string $ string = "Fluffy cat" hebben, en we willen een subtekenreeks krijgen van het tweede naar het vierde personage. Aangezien de nummering begint bij nul, ziet de variabele met deze substring er als volgt uit: $ newString = substr ($ string, 1, 4). Als we $ newString = substr ($ string, 1) invoeren, krijgen we een subtekenreeks van het tweede teken naar het laatste teken (dat wil zeggen, "luffy"). Deze code is identiek aan de volledige regelcode met strlen (): substr ($ string, 1, strlen ($ string)).

Gebruik de functie om een ​​subtekenreeks te vervangenstr_replace (), waarvoor drie variabelen nodig zijn: str_replace ($ subStr, $ newSub, $ str). In tegenstelling tot veel functies werkt str_replace () correct met Cyrillische symbolen en heeft het geen analoog met een voorvoegsel. bijvoorbeeld:

$ str = "Vandaag is verschrikkelijk weer!";

$ newStr = str_replace ("awful", "wonderful", $ str); // Vandaag is prachtig weer!

Een reeks naar een nummer vertalen

php voorbeelden
Iedereen die webprogrammering bestudeert, vroegof later is het nodig om een ​​string in een getal te vertalen. Hiervoor worden twee vergelijkbare functies gebruikt: intval () en floatval (), die elk één variabele $ string gebruiken. Ze verschillen alleen van elkaar in het type geretourneerde gegevens: intval () retourneert een geheel getal en floatval () is een drijvende-kommawaarde.

Zowel intval () als floatval () gebruikenHet is noodzakelijk dat de regel begint met de cijfers en dat deze worden omgezet in een cijfer. Als na de cijfers een reeks letters wordt weergegeven, worden ze gewoon genegeerd. Als de tekenreeks begint met letters, retourneert het gebruik van de functie nul. Idealiter zou de regel alleen cijfers moeten bevatten.

Een getal omzetten in een string

Vaak moet je cijfers in een string vertalen. Stel dat u de helft van het aantal moet nemen en het moet opklimmen (controleer bijvoorbeeld of aan de gelijkheid is voldaan: 88 x 88 + 33 x 33 = 8833). In dit geval wordt de functie strval () gebruikt, die een tekenreeks met een getal retourneert. Hierna kunt u alle andere acties uitvoeren met de nieuwe regel: wijzigen, zoeken naar het voorkomen van subtekenreeks en andere functies. Indien nodig kan de regel opnieuw worden vertaald in een nummer dat al op de bovenstaande manier is beschreven.

php-snaarfuncties
In het artikel slechts een klein deel van allesfuncties verbonden aan strings. Sommige van de niet-beschreven functies werken met symbolen, maar een grote is vanwege de specificiteit niet in het materiaal opgenomen. Om kennis te maken met deze functies, moet je naar de officiële PHP-documentatie gaan, die de nieuwste informatie toont.

</ p>
leuk vond:
0
Gerelateerde artikelen
Functies van sociale instellingen en hun schendingen
Competent ontwerp van het essay
Typen variabelen in Pascal: beschrijving,
Classificatie van typen analytische functies in
Hoe een probleem op te lossen in Excel "Eerste letter
De exploderende PHP-functie gebruiken
Programmeren: Java. Typen gegevens
Waarom AT-opdrachten gebruiken?
Instellingen in CSS: afstand tussen lijnen
Populaire berichten
omhoog