Nette\String
Nette\String je statická třída s užitečnými funkcemi pro práci s řetězci.
String::checkEncoding
Zjistí, je-li řetězec v požadovaném kódování.
public static bool checkEncoding (string $s, [string $encoding = 'UTF-8'])
Příklad:
$isUtf = String::checkEncoding($string, 'UTF-8');
String::fixEncoding
Vrací správně zakódovaný řetězec v určitém kódování. Výchozí
je UTF-8, případně je změněno druhým parametrem metody.
public static string fixEncoding (string $s, [string $encoding = 'UTF-8'])
Příklad:
$correctString = String::fixEncoding($string);
String::startsWith
Vrací TRUE v případě, že řetězec $haystack začíná
řetězcem $needle.
public static bool startsWith (string $haystack, string $needle)
Příklad:
$haystack = "Začíná";
$needle = "Za";
String::startsWith($haystack, $needle); // true
String::endsWith
Vrací TRUE v případě, že řetězec $haystack končí
řetězcem $needle.
public static bool endsWith (string $haystack, string $needle)
Příklad:
$haystack = "Končí";
$needle = "čí";
String::endsWith($haystack, $needle); // true
String::normalize
Odstraní z textu pravostranné mezery a sjednotí oddělovače řádků.
public static string normalize (string $s)
Příklad:
$normalizedString = String::normalize($string);
String::webalize
Upraví řetězec do tvaru použitelného v URL adresách. Odstraní
diakritiku a všechny znaky kromě alfanumerických nahradí oddělovačem slov
-.
public static string webalize (string $s, [string $charlist = NULL])
Příklad:
echo String::webalize("krásná webová adresa"); // vypíše krasna-webova-adresa
Mají-li být zachovány i jiné znaky, lze je vyjmenovat v druhém parametru funkce.
echo String::webalize("19. 2. podtržítková_akce", "._");
// 19.-2.-podtrzitkova_akce
Vstupní řetězec musí být kódován v UTF-8.
Pokud je v jiném kódování, převeďte jej funkcí iconv.
String::truncate
Ořízne řetězec na maximální délku a zachová celá slova, je-li to možné. Na konec oříznutého textu se přidá trojtečka, což lze změnit třetím nepovinným parametrem.
public static string truncate (string $s, int $maxLen, [string $append = "…"])
Příklad:
$text = 'Řekněte, jak se máte?';
echo String::truncate($text, 5); // 'Řekn…'
echo String::truncate($text, 20); // 'Řekněte, jak se…'
echo String::truncate($text, 30); // 'Řekněte, jak se máte?'
Vstupní řetězec musí být kódován v UTF-8.
Pokud je v jiném kódování, převeďte jej funkcí iconv.
String::bytes
Převádí velikosti souborů z počtu bajtů do lidsky čitelných jednotek.
public static string bytes (int $bytes)
Příklad:
echo String::bytes(filesize("filename.txt"));
// 0 B, 10 B nebo 1.25 GB, ...
Viz také:
