PHP-strängfunktioner förklarade med exempel

⚡ Smart sammanfattning

Strängar i PHP är ordnade samlingar av tecken och en av språkets centrala datatyper. Den här genomgången visar de fyra sätten att skapa strängar: enkla citattecken, dubbla citattecken, heredoc och nowdoc, och demonstrerar sedan de mest användbara inbyggda strängfunktionerna med exempel.

  • 🔤 Vad strängar är: En sträng är en sekvens av tecken och en central PHP-datatyp som används för att lagra text som namn, meddelanden och HTML.
  • ' Enskilda citat: Strängar i enkla citattecken är literala; variabler expanderas inte, och endast det escapede citattecknet och bakåtsnedstrecket tolkas.
  • " Double Citat: Double-citerade strängar expanderar variabler och tolkar escape-tecken som \n, vilket gör dem idealiska för dynamisk text.
  • 📄 Heredoc: Heredoc bygger flerradiga strängar med variabel expansion, utan escaping dubbla citattecknen inuti dem.
  • 🔒 Nudoc: Nowdoc fungerar som enkla citattecken för flerradig råtext och utför ingen parsning eller variabel expansion.
  • 🔧 Strängfunktioner: Funktioner som strlen, strpos, substr, str_replace och explode inspekterar och transformerar strängvärden.
  • 🤖 AI Assist: AI-verktyg kan föreslå rätt strängfunktion för en uppgift och generera hjälpmedel för rensning eller formatering.

PHP-strängar

Vad är String i PHP?

En sträng är en samling tecken. String är en av de datatyper som stöds av PHP.

Strängvariabler kan innehålla alfanumeriska tecken. Strängar skapas när:

  • Du deklarerar en variabel och tilldelar strängtecken till den
  • Du använder PHP-strängar direkt med echo-satsen.
  • PHP-strängfunktioner är språkkonstruktioner som hjälper dig att arbeta med text.
  • Att lära sig hur strängar fungerar i PHP och hur man manipulerar dem kommer att göra dig till en mycket effektiv och produktiv utvecklare.

PHP Skapa strängar med hjälp av enstaka citattecken med exempel

Låt oss nu titta på de fyra olika sätten att skapa och manipulera strängar i PHP.

Skapa PHP-strängar med enkla citationstecken: det enklaste sättet att skapa en sträng är att använda enkla citationstecken.

Låt oss titta på ett exempel som skapar en enkel sträng i PHP.

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

Produktion:

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

Om det enstaka citattecken är en del av strängvärdet, kan det escapes med omvänt snedstreck.

Koden nedan illustrerar hur man undviker ett enstaka citat.

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

Produktion:

I'll be back after 20 minutes

PHP Skapa strängar med hjälp av Double citat med Exempel

Double Citat används för att skapa relativt komplexa strängar jämfört med enkla citat.

Variabelnamn kan användas inom dubbla citattecken och deras värden kommer att visas.

Låt oss titta på ett exempel.

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

PHP Skapa strängar med hjälp av Double citat

HÄR,

  • Ovanstående exempel skapar en enkel sträng med värdet av Alicia.
  • Variabelnamnet används sedan i strängen som skapas med hjälp av dubbla citationstecken, och dess värde interpoleras vid körning.

Produktion:

Alicia is friends with kalinda

Förutom variabel interpolering kan dubbla citationstecken också undanta fler specialtecken som "\n för en radmatning, \$ för dollartecknet" etc.

Fler exempel. Låt oss anta att vi har följande kod.

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

Produktion:

NOTICE : Undefined variable
pas

När koden ovan körs visas meddelandet "Meddelande: Odefinierad variabel".

Detta beror på att $word behandlas som en variabel.

Om vi ​​vill att dollartecknet ska behandlas som ett bokstavligt värde måste vi undkomma det.

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

Produktion:

pas$word

PHP Heredoc med exempel

Heredoc-metoden används för att skapa ganska komplexa strängar jämfört med dubbla citationstecken.

Heredoc stöder alla funktioner i dubbla citationstecken och tillåter att skapa strängvärden med mer än en rad utan PHP-strängsammanfogning.

Att använda dubbla citattecken för att skapa strängar som har flera rader genererar ett fel.

Du kan också använda dubbla citattecken inuti utan escping dem.

Exemplet nedan illustrerar hur heredoc-metoden används för att skapa strängvärden.

<?php

$baby_name = "Shalon";

echo <<<EOT

When $baby_name was a baby,

She used to look like a "boy".

EOT;

?>

HÄR,

<< är strängavgränsaren.

EOT är förkortningen för textens slut.

Den bör definieras på en egen rad i början och i slutet av strängen.

Obs: du kan använda vad du vill istället för EOT.

PHP Heredoc

Produktion:

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

PHP Nowdoc med exempel

Metoden för att skapa strängar med nowdoc liknar heredoc-metoden men fungerar på samma sätt som enkla citationstecken.

Ingen parsning sker inuti nowdoc.

Nowdoc är idealiskt när man arbetar med rådata som inte behöver analyseras.

Koden nedan visar nowdoc-implementationen.

<?php

$baby_name = "Shalon";

$my_variable = <<<'EOT'

When $baby_name was a baby,

She used to look like a "boy".

EOT;

echo $my_variable;

?>

Produktion:

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

Exempel på PHP-strängfunktioner

Strängfunktioner i PHP används för att manipulera strängvärden.

Vi ska nu titta på några av de vanligaste strängfunktionerna i PHP.

Funktion BESKRIVNING Exempelvis Produktion
strtolower Används för att konvertera alla strängtecken till små bokstäver echo strtolower('Benjamin'); utgångar benjamin
strtoupper Används för att konvertera alla strängtecken till versaler echo strtoupper('george w bush'); utgångar GEORGE W BUSH
strlen Funktionen stränglängd används för att räkna antalet tecken i en sträng. Mellanslag mellan tecken räknas också. echo strlen('Amerikas förenta stater'); 24
explodera Används för att konvertera strängar till en arrayvariabel $settings = explode(';', “host=localhost; db=sales; uid=root; pwd=demo”); print_r($inställningar); Array ( [0] => värd=lokal värd [1] => db=försäljning [2] => uid=root [3] => pwd=demo )
substr Används för att returnera en del av strängen. Den accepterar tre grundläggande parametrar: strängen som ska förkortas, startpositionen och antalet tecken som ska returneras. $my_var = 'Detta är en riktigt lång mening som jag vill förkorta';echo substr($my_var,0, 12).'…'; Detta är en re…
str_ersätt Används för att hitta och ersätta angivna strängvärden i en given sträng. fungera accepterar tre argument: texten som ska ersättas, ersättningstexten och texten som analyseras. echo str_replace ('den', 'det', 'den bärbara datorn är väldigt dyr'); den bärbara datorn är väldigt dyr
strpos Används för att lokalisera och returnera positionen för ett eller flera tecken i en sträng. Denna funktion accepterar två argument. echo strpos('PHP-programmering','Pro'); 4
sha1 Används för att beräkna SHA-1-hash för ett strängvärde echo sha1('lösenord'); 5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8
md5 Används för att beräkna MD5-hashen för ett strängvärde echo md5('lösenord'); 5f4dcc3b5aa765d61d8327deb882cf99
str_ord_antal Används för att räkna antalet ord i en sträng. echo str_word_count('Det här är en riktigt lång mening som jag vill korta ner'); 12
ucfirst Gör det första tecknet i ett strängvärde med versaler echo ucfirst('respekt'); Utgångar Respekt
lcförst Gör det första tecknet i ett strängvärde med gemener echo lcfirst('RESPECT'); Utgångar RESPEKT

Vanliga frågor

Använd punktoperatorn för att koppla ihop strängar, till exempel $full = $first . ' ' . $last;. Du kan också lägga till en befintlig sträng med operatorn .=, vilket lägger till text i slutet av variabeln.

I PHP 8, använd str_contains($haystack, $needle), vilket returnerar sant eller falskt. I äldre versioner, använd strpos() och kontrollera att resultatet inte är identiskt med falskt, eftersom en matchning på position 0 är falsk.

PHP-strängar är föränderliga och kan indexeras som arrayer. Läs ett tecken med $str[0] och ändra det till och med med $str[0] = 'H'. Indexet är nollbaserat, så det första tecknet är på position 0.

Ja. AI kan skriva hjälpfunktioner som trimmar blanksteg, tar bort taggar, normaliserar gemener och versaler eller slugifierar text, och kombinerar funktioner som trim, strip_tags och preg_replace. RevVisa reglerna så att de matchar exakt din inmatning.

Ja. Beskriv målet, som att hitta, ersätta eller dela text, så kan AI peka dig till funktioner som strpos, str_replace, substr eller explode, och visa ett kort exempel för varje.

Sammanfatta detta inlägg med: