PHP Manual
/
Spracovanie reťazcov

Špeciálne riadiace znaky v PHP

24. 11. 2021

Obsah článku

Reťazce PHP môžu obsahovať špeciálne riadiace znaky, ktoré majú v určitom kontexte iný význam a nemusia sa správať ako bežné znaky.

Mnohé z nich sú vám už intuitívne známe. Niektoré sú vyhradené na špeciálne použitie a iné sú vyhradené napríklad pre znaky na klávesnici.

Písanie špeciálnych znakov

Špeciálne znaky sa píšu v dvojitých úvodzovkách.

Je to teda veľmi jednoduché:

$message = "Dobrý deň, svet.";

Predchádzajúci kód obsahuje medzi slovami Hello a world zalomenie riadku.

Tabuľka špeciálnych znakov

Ak je reťazec uzavretý v dvojitých úvodzovkách ("), PHP bude interpretovať nasledujúce escape sekvencie ako špeciálne znaky:

Sekvencia Význam
\n linefeed (LF alebo 0x0A (10) v ASCII)
\r návrat vozíka (CR alebo 0x0D (13) v ASCII)
``t` horizontálny tabulátor (HT alebo 0x09 (9) v ASCII)
\v vertikálny tabulátor (VT alebo 0x0B (11) v ASCII)
\e escape (ESC alebo 0x1B (27) v ASCII)
\f Form feed (FF alebo 0x0C (12) v ASCII)
\\\ spätné lomítko
\$ znak dolára
\" dvojité úvodzovky
[0-7]{1,3} Sekvencia znakov zodpovedajúca regulárnemu výrazu je znak v osmičkovej notácii, ktorý sa potichu preleje do bajtu. (napr. "\400" === "\000")
\x[0-9A-Fa-f]{1,2} Postupnosť znakov zodpovedajúca regulárnemu výrazu je znak v hexadecimálnom zápise.
\u{[0-9A-Fa-f]+} postupnosť znakov zodpovedajúca regulárnemu výrazu je kódový bod Unicode, ktorý sa do reťazca vypíše ako reprezentácia tohto kódového bodu v UTF-8.

Rovnako ako pri reťazcoch s jednoduchými úvodzovkami sa pri escapovaní akéhokoľvek iného znaku vypíše spätné lomítko.

Pri ohraničovaní reťazcov úvodzovkami majte na pamäti, že obsiahnuté premenné budú expandované (hodnoty premenných budú zapísané priamo do reťazca). Takéto správanie môže byť veľmi nebezpečné.

Jan Barášek   Více o autorovi

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:

Související články

1.
6.
Status:
All systems normal.
2024