如何在 JS 中对 URL 进行编码并在 PHP 中进行解码?

Muj*_*KAS 5 javascript php urlencode urldecode

以下是我的JS代码:

window.location.href = 'products.php?price_range=-INFto2000,2001to5000';
Run Code Online (Sandbox Code Playgroud)

我的问题是如何在 javascript 中对 URL 进行编码并在 PHP 中对其进行解码,这样我的浏览器的导航栏就会显示

“products.php?price_range=-INFto2000%2C2001to5000”

代替

“products.php?price_range=-INFto2000,2001to5000”

我的 php 代码将能够使用-INFto2000,2001to5000in的正确值$_GET['price_range']

Sat*_*aty 2

在您的 JavaScript 代码中尝试一下

window.location.href = 'products.php?price_range='+encodeURIComponent('-INFto2000,2001to5000');
Run Code Online (Sandbox Code Playgroud)

您可以在 $_GET['price_range'] 中访问解码后的值。PHP 中默认对 $_GET 变量进行解码。

  • `urldecode($_GET['price_range']);` 是错误的。PHP 将在将值放入“$_GET”之前自动解码 URL 中的数据 (4认同)