Intereting Posts
Удаление пробелов из шаблонов smarty из PHP Facebook Graph API – вкладка страницы Дополнительные разрешения Каков уровень включения функций в php? Отображать все строки и обновлять все строки с помощью отправки Полнотекстовый поиск ответа? проблема для получения изображения в php с загрузкой скрипта ANDROID передача данных с javascript на php с использованием JQuery Лучший способ передать данные с PHP на JavaScript для моего конкретного случая Корень сайта для бэкэнд и интерфейса Получить самую последнюю дату из массива дат Как использовать определенный порт для отправки или получения обновлений через webhook для телеграммы? Разрешенный размер памяти 134217728 байт, израсходованный в PhpExcel Выражение не допускается по значению поля по умолчанию Не удалось загрузить файл из плагина WordPress на сервер symfony по API? Является ли хорошей практикой инициализировать элементы в ассоциативном массиве в php?

PHP-эквивалент для javascript escape / unescape

Допустим, у меня есть строка: что-то

Когда я убегаю в JS, я получаю следующее: % 73% 6F% 6D% 65% 74% 68% 69% 6E% 67

поэтому я могу использовать этот код в JS для его декодирования:

document.write(unescape('%73%6F%6D%65%74%68%69%6E%67')); 

Мне нужна функция escape в PHP, которая будет делать то же самое (будет кодировать что-то : % 73% 6F% 6D% 65% 74% 68% 69% 6E% 67 )

Как это сделать ?

Related of "PHP-эквивалент для javascript escape / unescape"

PHP:

 rawurlencode("your funky string"); 

JS:

decodeURIComponent ( 'ваш% 20funky% 20string');

Не используйте escape поскольку он устарел.

 rawurldecode('%73%6F%6D%65%74%68%69%6E%67'); 

Сначала прояснение:

Допустим, у меня есть строка: что-то
Когда я убегаю в JS, я получаю следующее:% 73% 6F% 6D% 65% 74% 68% 69% 6E% 67

Это неправильно . (Btw, функция escape() функции JS устарела. Вместо этого вы должны использовать encodeURIComponent() !)

поэтому я могу использовать этот код в JS для его декодирования: document.write (unescape ('% 73% 6F% 6D% 65% 74% 68% 69% 6E% 67'));

Да, это напишет «что-то» в документе (как escape() , также unescape() устарел, вместо этого используйте decodeURIComponent() ).


На ваш вопрос:

Мне нужна функция [snip] в PHP, которая [snip] кодирует что-то % 73% 6F% 6D% 65% 74% 68% 69% 6E% 67

То, что вы ищете, это шестнадцатеричное представление charachters. Итак, чтобы получить строку «% 73% 6F% 6D% 65% 74% 68% 69% 6E% 67» из строки «что-то» , вам понадобится:

 <?php function stringToHex($string) { $hexString = ''; for ($i=0; $i < strlen($string); $i++) { $hexString .= '%' . bin2hex($string[$i]); } return $hexString; } $hexString = stringToHex('something'); echo strtoupper($hexString); // %73%6F%6D%65%74%68%69%6E%67 

Backwards:

 function hexToString($hexString) { return pack("H*" , str_replace('%', '', $hexString)); } $string = hexToString('%73%6F%6D%65%74%68%69%6E%67'); echo $string; // something