Hvad er en streng?
En streng er en samling af tegn. Streng er en af de datatyper, der understøttes af PHP.
Strengvariablerne kan indeholde alfanumeriske tegn. Strenge oprettes, når;
- Du erklærer variabel og tildeler strengtegn til den
- Du kan bruge dem direkte med ekko-sætning.
- Streng er sprogkonstruktion, det hjælper med at fange ord.
- At lære hvordan strenge fungerer i PHP og hvordan man manipulerer dem vil gøre dig til en meget effektiv og produktiv udvikler.
I denne vejledning lærer du-
- Opret strenge
- Opret strenge ved hjælp af dobbelt anførselstegn
- Heredoc
- Nowdoc
- Strengfunktioner
PHP Opret strenge
Lad os nu se på de fire forskellige måder at oprette strenge på.
Oprettelse af strenge ved hjælp af enkelt anførselstegn: Den enkleste måde at oprette en streng på er at bruge enkelt anførselstegn.
Lad os se på et eksempel, der opretter en simpel streng i PHP.
Produktion:
string(42) "You need to be logged in to view this page"
Hvis det enkelte citat er en del af strengværdien, kan det undslippes ved hjælp af tilbageslag.
Koden nedenfor illustrerer, hvordan man undgår et enkelt tilbud.
Produktion:
I'll be back after 20 minutes
PHP Opret strenge ved hjælp af dobbelt anførselstegn
De dobbelte anførselstegn bruges til at skabe relativt komplekse strenge sammenlignet med enkelt anførselstegn.
Variable navne kan bruges i dobbelt anførselstegn, og deres værdier vises.
Lad os se på et eksempel.
HER,
- Ovenstående eksempel opretter en simpel streng med værdien af Alicia.
- Variabelnavnet bruges derefter i den streng, der oprettes ved hjælp af dobbelt anførselstegn, og dens værdi interpoleres ved kørselstidspunktet.
Produktion:
Alicia is friends with kalinda
Ud over variable interpolationer kan strengen med dobbelt citat også undslippe flere specialtegn såsom "\ n for en linjefeedning, \ $ dollar for dollartegnet" osv.
Flere eksempler Lad os antage, at vi har følgende kode
pas
Produktion:
NOTICE : Undefined variablepas
udførelse af ovenstående koder udsender en meddelelse "Bemærk: Udefineret variabel".
Dette skyldes, at $ word behandles som en variabel.
Hvis vi ønsker, at dollartegnet skal behandles som en bogstavelig værdi, er vi nødt til at undslippe det.
Produktion:
pas$word
PHP Heredoc
Denne heredoc-metode bruges til at skabe ret komplekse strenge sammenlignet med dobbelt anførselstegn.
Heredoc understøtter alle funktionerne i dobbelt anførselstegn og tillader oprettelse af strengværdier med mere end en linje uden php-streng sammenkædning.
Brug af dobbelt anførselstegn til at oprette strenge, der har flere linjer, genererer en fejl.
Du kan også bruge dobbelt tilbud indeni uden at undslippe dem.
Eksemplet nedenfor illustrerer, hvordan Heredoc-metoden bruges til at oprette strengværdier.
HER,
<<< EOT er strengafgrænser.
EOT er forkortelsen for slutningen af teksten.
Det skal defineres i dets on-line i begyndelsen af strengen og i slutningen.
Bemærk: Du kan bruge alt, hvad du kan lide i stedet for EOT
Produktion:
When Shalon was a baby, She used to look like a "boy".
PHP Nowdoc
Nowdoc-strengoprettelsesmetoden svarer til heredoc-metoden, men fungerer som den måde, enkelt citater fungerer på.
Ingen parsing finder sted inde i Nowdoc.
Nowdoc er ideel, når du arbejder med rådata, der ikke skal analyseres.
Koden nedenfor viser Nowdoc-implementeringen
Produktion:
When $baby_name was a baby, She used to look like a "boy".
PHP-strengfunktioner
PHP-strengfunktioner bruges til at manipulere strengværdier.
Vi skal nu se på nogle af de almindeligt anvendte strengefunktioner i PHP
Fungere | Beskrivelse | Eksempel | Produktion |
---|---|---|---|
strtolower | Bruges til at konvertere alle strengtegn til små bogstaver | ekko strtolower ('Benjamin'); | output benjamin |
strtoupper | Bruges til at konvertere alle strengtegn til store bogstaver | ekko strtoupper ('george w bush'); | udgange GEORGE W BUSH |
strlen | Strenglængdefunktionen bruges til at tælle antallet af tegn i en streng. Mellemrum mellem tegn tælles også | ekko strlen ('Amerikas Forenede Stater'); | 24 |
eksplodere | Bruges til at konvertere strenge til en matrixvariabel | $ indstillinger = eksplodere (';', "vært = localhost; db = salg; uid = root; pwd = demo"); print_r ($ indstillinger); | Array ([0] => vært = localhost [1] => db = salg [2] => uid = root [3] => pwd = demo) |
substr | Bruges til at returnere en del af strengen. Den accepterer tre (3) grundlæggende parametre. Den første er strengen, der skal afkortes, den anden parameter er startpunktets position, og den tredje parameter er antallet af tegn, der skal returneres. | $ my_var = 'Dette er en rigtig lang sætning, som jeg ønsker at forkorte'; ekkosubstrat ($ my_var, 0, 12). '...'; | Dette er en ... |
str_replace | Bruges til at finde og erstatte specificerede strengværdier i en given streng. Funktionen accepterer tre argumenter. Det første argument er den tekst, der skal erstattes, det andet argument er erstatningsteksten, og det tredje argument er den tekst, der analyseres. | echo str_replace ('den', 'at', 'den bærbare computer er meget dyr'); | den bærbare computer er meget dyr |
strpos | Bruges til at lokalisere og returnere placeringen af et tegn i en streng. Denne funktion accepterer to argumenter | ekko strpos ('PHP-programmering', 'Pro'); | 4 |
sha1 | Bruges til at beregne SHA-1-hash af en strengværdi | ekko sha1 ('adgangskode'); | 5baa61e4c 9b93f3f0 682250b6cf8331b 7ee68fd8 |
md5 | Bruges til at beregne md5-hash af en strengværdi | ekko md5 ('adgangskode'); | 9f961034ee 4de758 baf4de09ceeb1a75 |
str_word_count | Bruges til at tælle antallet af ord i en streng. | echo str_word_count ('Dette er en rigtig lang sætning, som jeg ønsker at forkorte'); | 12 |
først | Lav det første tegn i en strengværdi med store bogstaver | ekko ucfirst ('respekt'); | Udgange Respekt |
Først | Lav det første tegn i en strengværdi med små bogstaver | ekko lcfirst ('RESPECT'); | Udgange rESPECT |
For en komplet liste over PHP-strenge, se https://php.net/manual/en/ref.strings.php
Resumé
- En streng er et sæt tegn
- enkelt anførselstegn bruges til at specificere enkle strenge
- dobbelt anførselstegn bruges til at skabe ret komplekse strenge
- heredoc bruges til at skabe komplekse strenge
- Nowdoc bruges til at oprette strenge, der ikke kan parses.