PHP - substr

PHP -> Funkcie -> Funkcie pre prácu s reťazcami PHP -> PHP - substr

Syntax

string substr ( string $string, int $start [, int $length] )

Popis

Príkaz jazyka PHP
ubstr() vrací část argumentu string určenou argumenty startlength.

Pokud je start kladný, vrácený řetězec začne start-tým znakem řetězce string, počítáno od nuly. Například v řetězci 'abcdef' je znakem na 0-té pozici 'a', znakem na pozici 2 je 'c', atd.
<?php
$rest = substr("abcdef", 1);    // vrátí "bcdef"
$rest = substr("abcdef", 1, 3); // vrátí "bcd"
$rest = substr("abcdef", 0, 4); // vrátí "abcd"
$rest = substr("abcdef", 0, 8); // vrátí "abcdef"

// Přístup přes složené závorky je další možnost
$string = 'abcdef';
echo $string{0};                // vrátí a
echo $string{3};                // vrátí d
?>


Pokud je start záporný, vrácený řetězec začne start-tým znakem od konce argumentu string.
<?php
$rest = substr("abcdef", -1);    // returns "f"
$rest = substr("abcdef", -2);    // returns "ef"
$rest = substr("abcdef", -3, 1); // returns "d"
?>


Pokud je argument length kladný, vrácený řetězec skončí length znaků za pozicí start. Pokud je parametr string kratší než start znaků, vrátí tato funkce FALSE.

Pokud je parametr length negativní, tak bude z konce řetězce string vynechán odpovídající počet znaků. Pokud parametr start určuje pozici za tímto zkrácením, bude vrácen prázdný řetězec.

<?php
$rest = substr("abcdef", 0, -1)// vrátí "abcde"
$rest = substr("abcdef", 2, -1)// vrátí "cde"
$rest = substr("abcdef", 4, -4)// vrátí ""
$rest = substr("abcdef", -3, -1); // vrátí "de"
?>


Poznámka

Pre text v UTF8 nepoužívajte substr. Pracuje totiž po znakoch, pričom UTF8 môže byť jedno písmeno vyskladané z dvoch znakov. Pre UTF8 používajte funkciu mb_substr.

Pozri aj

mb_substr, strrchr, substr_replace, ereg, trim