Как мне закодировать все символы в строке - PullRequest
1 голос
/ 18 мая 2011

Как мне закодировать все символы в строке.

Пример: A =% 32 // Или что-то в этом роде
B =% 33

Я хочу сделать это безжестко закодировать каждый символИ я также хочу иметь возможность декодировать его снова.Есть ли для этого функция php?

Спасибо.

Ответы [ 3 ]

1 голос
/ 18 мая 2011

попробуй с:

urlencode($string);
urldecode($string);

http://php.net/manual/en/function.urlencode.php

http://php.net/manual/en/function.urldecode.php

1 голос
/ 18 мая 2011

Если вы действительно хотите сделать это, вы можете сделать это с помощью preg_replace_callback довольно легко:

echo preg_replace_callback('/./', function($char) {
    return '%' . ord($char[0]);
}, 'this is probably an unnecessary step');
// %116%104%105%115%32%105%115%32%112%114%111%98%97%98%108%121%32%97%110%32%117%110%110%101%99%101%115%115%97%114%121%32%115%116%101%112

Вы можете изменить его на обратное, используя chr:

echo preg_replace_callback('/%[^%]*/', function($seq) {
    return chr(substr($seq[0], 1));
}, '%116%104%105%115');
// this

Однако это почти наверняка не нужно для всего, что вы делаете ...

См .:

0 голосов
/ 18 мая 2011

Разве вы не имеете в виду ord () и chr ()?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...