PHP-URL-Kodierung/Dekodierung
P粉512363233
P粉512363233 2023-08-14 13:16:12
0
2
599
<p>Ich habe die in dieser Frage akzeptierte Lösung verwendet, um die ID zu verschlüsseln, zum Beispiel in <strong>/index.php?id=3</strong>. Das Problem ist, dass ich den verschlüsselten Wert nicht als URL wie <strong>/index.php?id=dsf13f3343f23/23=</strong> senden kann. Da die URL manchmal seltsame Zeichen enthält, achten Sie beispielsweise auf das <code>=</code>-Symbol</p>
P粉512363233
P粉512363233

Antworte allen(2)
P粉214176639

使用PHP的urlencode()函数将值编码后再放入URL中。

该函数将“奇怪”的字符,如=,转换为安全放入URL中的格式。你可以像这样使用它:

Header('Location: /index.php?id=' . urlencode($id))
P粉346326040

在URL中传递的值中的奇怪字符应该使用urlencode()进行转义。


例如,以下代码片段:

echo urlencode('dsf13f3343f23/23=');

将给出:

dsf13f3343f23%2F23%3D

作为URL参数,这样是有效的。


如果你想要构建一个包含多个参数的查询字符串,请查看http_build_query()函数。

例如:

echo http_build_query(array(
    'id' => 'dsf13f3343f23/23=',
    'a' => 'plop',
    'b' => '$^@test', 
));

将给出:

id=dsf13f3343f23%2F23%3D&a=plop&b=%24%5E%40test

这个函数会自动处理转义和参数的拼接;-)

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage