V PHP řetězcích mohou být obsaženy speciální řídící znaky, které mají v určitém kontextu různý význam a nechovají se nutně jako obyčejné znaky.
Řadu z nich budete již intuitivně znát. Některé jsou vyhrazeny pro speciální použití a jiné třeba pro znaky na klávesnici.
Speciální znaky se zapisují do dvojitých uvozovek.
Stačí tedy velmi jednoduše:
$message = "Hello\nworld.";
Předchozí kód obsahuje zalomení řádku mezi slovem Hello a world.
Pokud je řetězec uzavřen ve dvojitých uvozovkách ("), bude PHP interpretovat následující escape sekvence jako speciální znaky:
| Sekvence | Význam |
|---|---|
\n |
linefeed (LF nebo 0x0A (10) v ASCII) |
\r |
carriage return (CR nebo 0x0D (13) v ASCII) |
\t |
horizontal tab (HT nebo 0x09 (9) v ASCII) |
\v |
vertical tab (VT nebo 0x0B (11) v ASCII) |
\e |
escape (ESC nebo 0x1B (27) v ASCII) |
\f |
form feed (FF nebo 0x0C (12) v ASCII) |
\\ |
backslash |
\$ |
dollar sign (znak dolaru) |
\" |
double-quote (dvojitá uvozovka) |
\[0-7]{1,3} |
posloupnost znaků odpovídající regulárnímu výrazu je znak v osmičkové notaci, který se v tichosti přeteče do bajtu. (např. "\400" === "\000") |
\x[0-9A-Fa-f]{1,2} |
posloupnost znaků odpovídající regulárnímu výrazu je znak v hexadecimálním zápisu. |
\u{[0-9A-Fa-f]+} |
posloupnost znaků vyhovující regulárnímu výrazu je kódový bod Unicode, který bude vypsán do řetězce jako reprezentace tohoto kódového bodu v UTF-8. |
Stejně jako u řetězců s jednoduchými uvozovkami se při escapování jakéhokoli jiného znaku vypíše i zpětné lomítko.
Při ohraničení řetězců pomocí uvozovek nezapomeňte na fakt, že obsažené proměnné budou expandovány (vypsány hodnoty proměnných přímo do řetězce). Toto chování může být extrémně nebezpečné.
Autor článku pracuje jako seniorní vývojář a software architekt v Praze. Navrhuje a spravuje velké webové aplikace, které znáte a používáte. Od roku 2009 nabral bohaté zkušenosti, které tímto webem předává dál.
Rád vám pomůžu:
Pomohu vám zavést AI do vašeho projektu – od analýzy a návrhu řešení až po nasazení do produkce. Ušetřete čas, zjednodušte procesy a získejte konkurenční výhodu.
Domluvit konzultaciNabízím trénink vývojářů, konzultace, školení a analýzu návrhových vzorů. Osobně v Praze nebo online.
Napište miNejlepsi tipy a triky o PHP do Vaseho e-mailu. Clanky a novinky nejen ze sveta PHP a programovani.