Často potřebujeme použít některé z konverzních funkcí. Pro některé má PHP k dispozici funkce přímo vestavěné, jiné si musíme napsat sami. Připravil jsem pro vás přehled těch, které využijete při své práci nejčastěji.
$code = URLEncode($code); // připraví řetězec pro předání do parametru v URL |
|
$code = URLDecode($code); // dekóduje řetězec zakódovaný URLEncode (není třeba používat při běžném přebírání parametrů z URL) |
|
$code = StripSlashes($code); // odstraní zpětná lomítka před "nebezpečnými" znaky (např. po AddSlashes() ) |
|
$code = AddSlashes($code); // před nebezpečné znaky přidá zpětná lomítka (např. pro předání do SQL dotazu) |
|
$code = $code*1; // zajistí, že obsah bude pouze číselná hodnota, pro původní údaj nezačínající číslem dává 0 (např. pro předání do SQL dotazu) |
|
$code = StrTr($code,"©ą®ľĄµ«»¦¬¶Ľˇ±","ŠšŽžĽľŤťŚŹśźĄą"); // převod kódování ISO 8859-2 => Windows-1250 |
|
$code = StrTr($code,"ŠšŽžĽľŤťŚŹśźĄą","©ą®ľĄµ«»¦¬¶Ľˇ±"); // Windows-1250 => ISO 8859-2 |
|
$code = StrTr($code, "áäčďéěëíµňóöôŕřą»úůüýľÁÄČĎÉĚËÍĄŇÓÖÔŘŔ©«ÚŮÜÝ®", "aacdeeeilnooorrstuuuyzAACDEEELINOOORRSTUUUYZ"); // odstraní diakritiku z textu v kódování ISO-8859-2 |
|
$code = StrTr($code, "áäčďéěëíľňôóöŕřšťúůüýžÁÄČĎÉĚËÍĽŇÓÖÔŘŔŠŤÚŮÜÝŽ", "aacdeeeilnooorrstuuuyzAACDEEELINOOORRSTUUUYZ"); // odstraní diakritiku z textu v kódování Windows-1250 |
|
$code = htmlspecialchars("$code", ENT_QUOTES); // převede speciální HTML znaky & " < > v textu na entity, apostrof se nepřevádí |
|
$code = htmlspecialchars("$code", ENT_QUOTES); // převede speciální HTML znaky & ‚ < > na entity, uvozovky se nepřevádějí, převádí se apostrof |
|
$code = $htmlentities($code); // převede všechny potřebné znaky v textu na entity, apostrof nebo uvozovky se převádí v závislosti na nastavení ENT_COMPAT, ENT_QUOTES nebo ENT_NOQUOTES; konverze je závislá na nastavení národního prostředí, výchozí tabulkou je ISO-8859-1 |
|
function unhtmlentities ($string) { $trans_tbl = get_html_translation_table (HTML_ENTITIES); $trans_tbl = array_flip ($trans_tbl); return strtr ($string, $trans_tbl); }
$code = unhtmlentities($code); // pomocí vlastní funkce se pokusí převést entity v textu na skutečné znaky
|
|
$code = Str_Replace("&","&",$code); // zobrazit jako zdrojový kód HTML, zabrání interpretaci entit v kódu |
|
$allowtags = "<embed>, <marquee>, <blink>, <hr>, <ul>, <li>, <ol>, <p>, <br>, <font>, <b>, <u>, <i>, <small>, <big>, <strong>, <em>, <a>, <img>"; // výčet povolených tagů $code = strip_tags($code,$allowtags); // z obsahu proměnné body vyjme nepovolené tagy |
|
$code = nl2br($code); // znak nový řádek v textu nahradí tagem <br /> |
|
$code = wordwrap( $code, 30, "<br />", 1); // každých 30 znaků vloží tag zalomení, hodí se např. pro výpis příspvěků do diskusního fóra (aby někdo nerozboural design příliš dlouhým slovem) |
|
$code=ereg_replace(" ([svzkuoiaSVZKAUOI]) ", " \\1 ", $code); // doplní pevnou mezeru za jednoznakové předložky a spojky |
|
Další funkce nebo případné upřesnění uvedených příkladů naleznete na stránkách PHP.
Starší komentáře ke článku
Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.