PHP-strengfunktioner forklaret med eksempler

โšก Smart opsummering

Strenge i PHP er ordnede samlinger af tegn og en af โ€‹โ€‹sprogets kernedatatyper. Denne gennemgang viser de fire mรฅder at oprette strenge pรฅ: enkelte anfรธrselstegn, dobbelte anfรธrselstegn, heredoc og nowdoc, og demonstrerer derefter de mest nyttige indbyggede strengfunktioner med eksempler.

  • ๐Ÿ”ค Hvad strenge er: En streng er en sekvens af tegn og en central PHP-datatype, der bruges til at indeholde tekst sรฅsom navne, beskeder og HTML.
  • ' Enkeltstรฅende citater: Strenge i enkelt anfรธrselstegn er literale; variabler udvides ikke, og kun det escapede anfรธrselstegn og omvendte skrรฅstreg fortolkes.
  • " Double Citater: Double-citerede strenge udvider variabler og fortolker escape-tegn som \n, hvilket gรธr dem ideelle til dynamisk tekst.
  • ๐Ÿ“„ Heredoc: Heredoc bygger flerlinjede strenge med variabel udvidelse, uden escaping de dobbelte anfรธrselstegn indeni dem.
  • ๐Ÿ”’ Nudoc: Nowdoc fungerer som enkelte anfรธrselstegn til rรฅ tekst med flere linjer og udfรธrer ingen parsing eller variabel udvidelse.
  • ๐Ÿ”ง Strengfunktioner: Funktioner som strlen, strpos, substr, str_replace og explode inspicerer og transformerer strengvรฆrdier.
  • ๐Ÿค– AI Assist: AI-vรฆrktรธjer kan foreslรฅ den rigtige strengfunktion til en opgave og generere rensnings- eller formateringshjรฆlpemidler.

PHP-strenge

Hvad er String i PHP?

En streng er en samling af tegn. String er en af โ€‹โ€‹de datatyper, der understรธttes af PHP.

Strengevariabler kan indeholde alfanumeriske tegn. Strenge oprettes, nรฅr:

  • Du deklarerer en variabel og tildeler strengtegn til den
  • Du bruger PHP-strenge direkte med echo-sรฆtningen.
  • PHP-strengfunktioner er sprogkonstruktioner, der hjรฆlper dig med at arbejde med tekst.
  • At lรฆre, hvordan strenge fungerer i PHP, og hvordan man manipulerer dem, vil gรธre dig til en meget effektiv og produktiv udvikler.

PHP Opret strenge ved hjรฆlp af enkelte anfรธrselstegn med eksempel

Lad os nu se pรฅ de fire forskellige mรฅder at oprette og manipulere strenge i PHP.

Oprettelse af PHP-strenge ved hjรฆlp af enkelte anfรธrselstegn: Den enkleste mรฅde at oprette en streng pรฅ er at bruge enkelte anfรธrselstegn.

Lad os se pรฅ et eksempel, der opretter en simpel streng i PHP.

<?php
var_dump('You need to be logged in to view this page');
?>

Output:

string(42) "You need to be logged in to view this page"

Hvis det enkelte citat er en del af strengvรฆrdien, kan det escapes ved hjรฆlp af omvendt skrรฅstreg.

Koden nedenfor illustrerer, hvordan man undslipper et enkelt citat.

<?php
echo 'I \'ll be back after 20 minutes';
?>

Output:

I'll be back after 20 minutes

PHP Opret strenge ved hjรฆlp af Double citater med Eksempel

Double Anfรธrselstegn bruges til at oprette relativt komplekse strenge sammenlignet med enkelte anfรธrselstegn.

Variablenavne kan bruges inden for dobbelte anfรธrselstegn, og deres vรฆrdier vil blive vist.

Lad os se pรฅ et eksempel.

<?php
$name = 'Alicia';
echo "$name is friends with kalinda";
?>

PHP Opret strenge ved hjรฆlp af Double citater

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 dobbelte anfรธrselstegn, og dens vรฆrdi interpoleres under kรธrsel.

Output:

Alicia is friends with kalinda

Ud over variabel interpolation kan dobbelte anfรธrselstegn ogsรฅ undslippe flere specialtegn sรฅsom "\n for et linjeskift, \$ for dollartegnet" osv.

Flere eksempler. Lad os antage, at vi har fรธlgende kode.

<?php $pwd = "pas$word"; echo $pwd; ?>

Output:

NOTICE : Undefined variable
pas

Udfรธrelse af ovenstรฅende kode udsender beskeden "Bemรฆrkning: 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.

<?php
$word = "word";
$pwd = "pas\$word";
echo $pwd; ?>

Output:

pas$word

PHP Heredoc med eksempel

Heredoc-metoden bruges til at oprette forholdsvis komplekse strenge sammenlignet med dobbelte anfรธrselstegn.

Heredoc understรธtter alle funktionerne i dobbelte anfรธrselstegn og tillader oprettelse af strengvรฆrdier med mere end รฉn linje uden PHP-strengsammenkรฆdning.

Brug af dobbelte anfรธrselstegn til at oprette strenge, der har flere linjer, genererer en fejl.

Du kan ogsรฅ bruge dobbelte anfรธrselstegn uden escping Them.

Eksemplet nedenfor illustrerer, hvordan heredoc-metoden bruges til at oprette strengvรฆrdier.

<?php

$baby_name = "Shalon";

echo <<<EOT

When $baby_name was a baby,

She used to look like a "boy".

EOT;

?>

HER,

<< er strengafgrรฆnseren.

EOT er forkortelsen for slutningen af โ€‹โ€‹tekst.

Den skal defineres pรฅ sin egen linje i begyndelsen og slutningen af โ€‹โ€‹strengen.

Bemรฆrk: Du kan bruge hvad som helst i stedet for EOT.

PHP Heredoc

Output:

When Shalon was a baby, She used to look like a "boy".

PHP Nowdoc med eksempel

Metoden til at oprette strenge med nowdoc ligner heredoc-metoden, men fungerer pรฅ samme mรฅde som enkelte anfรธrselstegn.

Der finder ingen parsing sted inde i nowdoc.

Nowdoc er ideelt, nรฅr man arbejder med rรฅdata, der ikke skal parses.

Koden nedenfor viser nowdoc-implementeringen.

<?php

$baby_name = "Shalon";

$my_variable = <<<'EOT'

When $baby_name was a baby,

She used to look like a "boy".

EOT;

echo $my_variable;

?>

Output:

When $baby_name was a baby, She used to look like a "boy".

Eksempler pรฅ PHP-strengfunktioner

Strengfunktioner i PHP bruges til at manipulere strengvรฆrdier.

Vi skal nu se pรฅ nogle af de almindeligt anvendte strengfunktioner i PHP.

Funktion Beskrivelse Eksempel Produktion
strtolavere Bruges til at konvertere alle strengtegn til smรฅ bogstaver echo strtolower('Benjamin'); udgange benjamin
strtoupper Bruges til at konvertere alle strengtegn til store bogstaver echo strtoupper('george w bush'); udgange GEORGE W BUSH
strlen Funktionen strenglรฆngde bruges til at tรฆlle antallet af tegn i en streng. Mellemrum mellem tegn tรฆlles ogsรฅ. echo strlen('Amerikas Forenede Stater'); 24
eksplodere Bruges til at konvertere strenge til en matrixvariabel $settings = explode(';', โ€œhost=localhost; db=salg; uid=root; pwd=demoโ€); print_r($indstillinger); Array ( [0] => host=localhost [1] => db=salg [2] => uid=root [3] => pwd=demo )
substr Bruges til at returnere en del af strengen. Den accepterer tre grundlรฆggende parametre: den streng, der skal forkortes, startpositionen og antallet af tegn, der skal returneres. $my_var = 'Dette er en rigtig lang sรฆtning, som jeg รธnsker at forkorte';echo substr($my_var,0, 12).'โ€ฆ'; Dette er en reโ€ฆ
str_erstat Bruges til at finde og erstatte angivne strengvรฆrdier i en given streng. funktion accepterer tre argumenter: den tekst, der skal erstattes, erstatningsteksten og den tekst, der analyseres. echo str_replace ('den', 'det', 'den bรฆrbare computer er meget dyr'); den bรฆrbare computer er meget dyr
strpos Bruges til at finde og returnere positionen af โ€‹โ€‹et eller flere tegn i en streng. Denne funktion accepterer to argumenter. echo strpos('PHP-programmering','Pro'); 4
sha1 Bruges til at beregne SHA-1-hashen for en strengvรฆrdi echo sha1('adgangskode'); 5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8
md5 Bruges til at beregne MD5-hashen for en strengvรฆrdi echo md5('adgangskode'); 5f4dcc3b5aa765d61d8327deb882cf99
str_ord_antal Bruges til at tรฆlle antallet af ord i en streng. echo str_word_count('Dette er en virkelig lang sรฆtning, som jeg gerne vil afkorte'); 12
ucfรธrst Gรธr det fรธrste tegn i en strengvรฆrdi med stort bogstav echo ucfirst('respekt'); Udgange Respekt
lcfรธrst Lav det fรธrste tegn i en strengvรฆrdi med smรฅ bogstaver echo lcfirst('RESPECT'); Udgange RESPEKT

Ofte Stillede Spรธrgsmรฅl

Brug punktumoperatoren til at forbinde strenge, for eksempel $full = $first . ' ' . $last;. Du kan ogsรฅ tilfรธje til en eksisterende streng med .=-operatoren, som tilfรธjer tekst til slutningen af โ€‹โ€‹variablen.

I PHP 8 skal du bruge str_contains($haystack, $needle), som returnerer sandt eller falsk. I รฆldre versioner skal du bruge strpos() og kontrollere, at resultatet ikke er identisk med falsk, da et match pรฅ position 0 er falsk.

PHP-strenge er รฆndrbare og kan indekseres ligesom arrays. Lรฆs et tegn med $str[0] og รฆndr det endda med $str[0] = 'H'. Indekset er nulbaseret, sรฅ det fรธrste tegn er pรฅ position 0.

Ja. AI kan skrive hjรฆlpere, der trimmer mellemrum, fjerner tags, normaliserer store og smรฅ bogstaver eller slugifier tekst, og kombinerer funktioner som trim, strip_tags og preg_replace. RevSe reglerne, sรฅ de stemmer prรฆcis overens med dine input.

Ja. Beskriv mรฅlet, sรฅsom at finde, erstatte eller opdele tekst, og AI kan pege dig pรฅ funktioner som strpos, str_replace, substr eller explode, og vise et kort eksempel for hver.

Opsummer dette indlรฆg med: