rawurlencode

(PHP 4, PHP 5, PHP 7)

rawurlencodeURL-кодирование строки согласно RFC 3986

Описание

rawurlencode ( string $str ) : string

Кодирует строку согласно » RFC 3986.

Список параметров

str

URL, который должен быть закодирован.

Возвращаемые значения

Возвращает строку, в которой все не цифро-буквенные символы, кроме -_.~, должны быть заменены знаком процента (%), за которым следует два шестнадцатеричных числа. Это кодирование, описанное в » RFC 3986, служит для защиты буквенных символов от интерпретации в качестве специальных разграничителей URL и защищает URL от искажения при передаче символов с последующей конвертацией (как в некоторых почтовых системах).

Замечание:

До версии PHP 5.3.0 rawurlencode кодировал символ "тильда" (~) в соответствии с » RFC 1738.

Список изменений

Версия Описание
5.3.4 Символы "тильда" больше не кодируются, когда rawurlencode() используется с EBCDIC-строками.
5.3.0 Теперь соответствует » RFC 3986.

Примеры

Пример #1 Пример использования rawurlencode для включение пароля в URL FTP

<?php
echo '<a href="ftp://user:'rawurlencode('foo @+%/'),
     
'@ftp.example.com/x.txt">';
?>

Результат выполнения данного примера:

<a href="ftp://user:foo%20%40%2B%25%[email protected]/x.txt">

Или, если вы передаете информацию как часть URL:

Пример #2 Пример использования rawurlencode()

<?php
echo '<a href="http://example.com/department_list_script/',
    
rawurlencode('sales and marketing/Miami'), '">';
?>

Результат выполнения данного примера:

<a href="http://example.com/department_list_script/sales%20and%20marketing%2FMiami">

Смотрите также