Как преобразовать пробелы в строку в %20 ?
Вот моя попытка:
$str = "What happens here?"; echo urlencode($str);
Вывод "What+happens+here%3F" , поэтому пробелы не представлены как %20 .
Что я делаю не так?
rawurlencode этого rawurlencode функцию rawurlencode .
Знак плюса – это историческое кодирование символа пробела в параметрах URL, как описано в справке для функции urlencode() .
Эта же страница содержит ответ, который вам нужен – вместо этого используйте rawurlencode() чтобы получить совместимую с RFC 3986 кодировку.
Я считаю, что если вам нужно использовать вариант %20 , вы можете использовать rawurlencode() .