(PHP 4, PHP 5)
urlencode — Koduje łańcuch metodą kodowania URLi
$str
)Zwraca łańcuch w którym wszystkie nie alfanumeryczne znaki z wyjątkiem
Przykład #1 urlencode() przykład
<?php
echo '<a href="mycgi?foo=', urlencode($userinput), '">';
?>
Notka: Uważaj na zmienne, które mogą zawierać HTML'owe encje. Rzeczy jak &, © i £ są przetwarzane przez przeglądarkę i ich aktualna postać jest używana dalej zamiast porządanej nazwy zmiennej. To jest oczywisty problem, o którym W3C informuje ludzi od lat. Referencje są tutaj: » http://www.w3.org/TR/html4/appendix/notes.html#h-B.2.2. PHP obsługuje zmianę separatora argumentów na zalecany przez W3C średnik poprzez dyrektywę arg_separator .ini. Niestety większość przeglądarek nie wysyła danych z formularza w formacie używającym średnik jako separator. Bardziej przenośnym rozwiązaniem jest użycie & jako separatora zamiast &. Nie musisz zmieniać PHP'owego arg_separator aby to uzyskać. Zostaw separator jako &, ale koduj swoje URL'e używając htmlentities()lub htmlspecialchars().
Przykład #2 urlencode() i htmlentities() przykład
<?php
$query_string = 'foo=' . urlencode($foo) . '&bar=' . urlencode($bar);
echo '<a href="mycgi?' . htmlentities($query_string) . '">';
?>
Patrz także: urldecode(), htmlentities(), rawurldecode() i rawurlencode().