Справочник по PHP : Функции работы с данными : Строковые функции : Функции URL

смотрим также
    Как прикладная кинезиология лечит хроническую боль в шее наиболее естественным способом.

Материал из Справочник Web-языков

Перейти к: навигация, поиск


Содержание

parse_url

Обрабатывает URL и возвращает его компоненты.

Синтаксис:

array parse_url(string url);

Эта функция возвращает ассоциативный массив, включающий множество различных существующих компонентов URL. Они включают "scheme", "host", "port", "user", "pass", "path", "query" и "fragment".

parse_str

Заносит строки URL в переменные.

Синтаксис:

void parse_str(string str [, array arr]);

Функция parse_str() интерпретирует строку str, как если бы эта строка содержала в себе переменные и их значения и передавалась бы в URL. Наша функция устанавливает для этих переменных значения.

Если задан второй необязательный параметр, то значения, найденные при помощи функции parse_str(), сохраняться не в глобальных переменных, а в элементах указанного массива.

$str = "name[]=Vasia&name[]=Pupkin&id=12645&mail=vasia@mail.ru&url=www.vasia.ru";
parse_str($str);
parse_str($str, $arr);
echo $id;        // выведет 1264
echo $name[0];   // выведет Vasia
echo $name[1];   // выведет Pupkin
print_r($arr);

выведет

Array
(
    [name] => Array
        (
            [0] => Vasia
            [1] => Pupkin
        )

    [id] => 12645
    [mail] => vasia@mail.ru
    [url] => www.vasia.ru
)

urlencode

Кодирование строки в URL

Синтаксис:

string urlencode (string str)

Возвращает строку, в которой все не алфавитно-цифровые символы (за исключением дефиса "-" и знака подчеркивания "_" и точки ".") заменены последовательностями: знак процента (%), за которым следуют две шестнадцатеричные цифры (обозначающие код символа), а символ пробела заменен на знак "+". Именно таким образом кодируются все данные, посылаемые HTML-формами. Медиа-тип этого кодирования обозначается как application/x-www-form-urlencoded; он отличается от стандарта кодирования RFC 1738 (rawurlencode()) тем, что по историческим причинам пробелы заменяются на знак плюс. Эта функция удобна при кодировании строки для использования в строке запроса, являющейся частью URL, и при передаче переменных на следующую страницу:

<?php
echo '';
?>
<?php
$query_string = 'foo=' . urlencode($foo) . '&bar=' . urlencode($bar);
echo '';
?>

urldecode

Декодирование строки из URL

Синтаксис:

string urldecode (string str)

Декодирует в строке последовательности %## (так в URL кодируются спецсимволы).

<?php
$a = explode('&', $QUERY_STRING);
$i = 0;
while ($i < count($a)) {
    $b = split('=', $a[$i]);
    echo 'Value for parameter ', htmlspecialchars(urldecode($b[0])),
         ' is ', htmlspecialchars(urldecode($b[1])), "
\n"; $i++; } ?>

rawurlencode

Кодирование URL.

Синтаксис:

string RawUrlEncode(string str);

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

echo ""; // передача пароля в гиперссылке

rawurldecode

Производит декодирование URL.

Синтаксис:

string rawurldecode(string str);

Эта функция возвращает строку, в которой последовательности с знаком процента (%) и следующими за ним двумя шестнадцатеричных числа преобразует в символы, соответствующими этому коду. Аналогична urldecode(), но не воспринимает + как пробел.

$str="foo%20bar%40baz";
echo rawurldecode($str);
// выведет foo bar@baz

base64_encode

Кодирует данные в кодировке MIME base64.

Синтаксис:

string base64_encode(string data);

base64_encode() возвращает data закодированные в кодировке base64. Эта кодировка разработана для того, чтобы передавать двоичные данные через транспортные слои, которые не содержат восьмой бит, такие как почтовые тела. Данные в кодировке Base64 занимают примерно на 33% больше места, чем оригинал.

base64_decode

Декодирует данные, закодированные в кодировке MIME base64.

Синтаксис:

string base64_decode(string encoded_data);

base64_decode() декодирует encoded_data и возвращает оригинал данных. Возвращаемые данные могут быть двоичными.

Добавить страницу в закладки:
РАЗРЕШАЕТСЯ перепечатывать и копировать информацию ТОЛЬКО ПРИ РАЗМЕЩЕНИИ ссылки на оригинал!
(<A href="http://www.spravkaweb.ru/">Справочник Web-языков</A>)
другие проекты
Rambler\'s Top100 Индекс цитирования