urlencode

(PHP 3, PHP 4 >= 4.0.0)

urlencode -- URL-k≤dovat °et∞zec

Popis

string urlencode ( string str)

Vrßtφ °et∞zec, ve kterΘm byly v╣echny nealfanumerickΘ znaky krom∞ -_. nahrazeny znakem procent (%) nßsledovan²m dv∞ma ╣estnßcktov²mi Φφslicemi a mezery k≤dovßny jako znaky plus (+). K≤dovßnφ je stejnΘ jako u dat postovan²ch z WWW formulß°e, tj. stejn∞ jako u application/x-www-form-urlencoded typu. To se li╣φ od RFC1738 k≤dovßnφ (viz rawurlencode()) v tom, ╛e z historick²ch d∙vod∙ se mezery k≤dujφ jako znaky plus (+). Tato funkce je vhodnß p°i k≤dovßnφ °et∞zce, kter² se mß pou╛φt jako query Φßst URL jako p°φhodn² zp∙sob p°edßnφ prom∞nn²ch na dal╣φ strßnku:

P°φklad 1. P°φklad urlencode()

echo '<A HREF="mycgi?foo=', urlencode ($userinput), '">';

Poznßmka: pozor p°i p°edßvßnφ prom∞nn²ch, kterΘ by mohly odpovφdat HTML entitßm. V∞ci jako &amp, &copy a &pound browser analyzuje a mφsto po╛adovanΘho jmΘna prom∞nnΘ pou╛ije odpovφdajφcφ entitu. To je z°ejm² problΘm, na kter² W3C upozor≥uje u╛ lΘta. P°φruΦka je tady: http://www.w3.org/TR/html4/appendix/notes.html#h-B.2.2 PHP podporuje zm∞nu odd∞lovaΦe argument∙ na st°ednφk doporuΦovan² W3C skrze .ini direktivu arg_separator. Bohu╛el, v∞t╣ina u╛ivatelsk²ch program∙ neposφlß data z formulß°∙ v tomto formßtu. P°enositeln∞j╣φ formou je pou╛φt jako odd∞lovaΦ &amp; mφsto &. Na to nemusφte m∞nit arg_separator. Nechte ho na &, ale k≤dujte URL pomocφ htmlentities() (urlencode($data)).

P°φklad 2. P°φklad na urlencode/htmlentities()

echo '<A HREF="mycgi?foo=', htmlentities (urlencode ($userinput) ), '">';

Viz takΘ urldecode(), htmlentities(), rawurldecode(), rawurlencode().