如何正确 url 编码字符串
How to properly url encode a string
我正在尝试将文件名解析为 url
字符串。
文件名为:
201-SALÃO DE JOGOS.jpg
我需要这样的输出:
201-SAL%c3O%20DE%20JOGOS.jpg
我正在这样尝试:
$var = 201-SALÃO DE JOGOS.jpg;
echo urlencode($var);
而是 returns:
201-SAL%C3%83O+DE+JOGOS.jpg
这不是有效的 url。我已经尝试过使用 htmlspecialchars()
和 htmlentities()
,但它们不起作用。
你需要rawurlencode
$filename = "201-SALÃO DE JOGOS.jpg";
print rawurlencode($filename);
您可以使用 str_replace
将 +
替换为 %20
:
<?php
$var = "201-SALÃO DE JOGOS.jpg";
$output = str_replace('+','%20',urlencode($var));
echo $output;
echo "*****";
echo urldecode($output);
?>
我正在尝试将文件名解析为 url
字符串。
文件名为:
201-SALÃO DE JOGOS.jpg
我需要这样的输出:
201-SAL%c3O%20DE%20JOGOS.jpg
我正在这样尝试:
$var = 201-SALÃO DE JOGOS.jpg;
echo urlencode($var);
而是 returns:
201-SAL%C3%83O+DE+JOGOS.jpg
这不是有效的 url。我已经尝试过使用 htmlspecialchars()
和 htmlentities()
,但它们不起作用。
你需要rawurlencode
$filename = "201-SALÃO DE JOGOS.jpg";
print rawurlencode($filename);
您可以使用 str_replace
将 +
替换为 %20
:
<?php
$var = "201-SALÃO DE JOGOS.jpg";
$output = str_replace('+','%20',urlencode($var));
echo $output;
echo "*****";
echo urldecode($output);
?>