Funkce substr
Funkce substr vyjme a vrátí
podřetězec z řetězce. Samotný řetězec přitom
zůstane nezměněn. Prvním parametrem funkce
přijímá řetězec, druhým - pozici znaku,
odkud se má začít vyjímat, a třetím
- počet znaků. Mějte na paměti, že číslování
znaků řetězce začíná od nuly.
Druhý parametr může být záporný
- v tomto případě začne počítání od konce řetězce,
přičemž poslední znak bude mít číslo
-1.
Třetí parametr lze vynechat - v tomto případě dojde k odříznutí až do konce řetězce.
Funkce správně pracuje pouze se znaky latinky (jednobajtovými znaky).
Syntaxe
substr(string $string, int $offset, ?int $length = null): string
Příklad
Vyjměme 3 znaky z řetězce
od pozice 1 (od druhého znaku, protože
první má číslo 0):
<?php
echo substr('abcde', 1, 3);
?>
Výsledek provedení kódu:
'bcd'
Příklad
Vyjměme všechny znaky až do konce řetězce, počínaje druhým (ten má číslo 1):
<?php
echo substr('abcde', 1);
?>
Výsledek provedení kódu:
'bcde'
Příklad
Vyjměme třetí a druhý znak od
konce, k tomu určeme začátek výřezu
-3 (to je číslo třetího znaku od konce),
a počet znaků - 2:
<?php
echo substr('abcde', -3, 2);
?>
Výsledek provedení kódu:
'cd'
Příklad
Vyjměme 2 poslední znaky,
k tomu určeme pozici předposledního znaku
(to je -2), a třetí parametr neuvedeme - v
tomto případě dojde k odříznutí až do konce řetězce:
<?php
echo substr('abcde', -2);
?>
Výsledek provedení kódu:
'de'
Příklad
Vyjměme poslední znak:
<?php
echo substr('abcde', -1);
?>
Výsledek provedení kódu:
'e'
Viz také
-
funkci
substr_replace,
která vyjme část řetězce a nahradí ji jinou