访问包含某个参数的链接时,我试图隐藏一些元素。但只有当source=app
是所有参数顺序中的第一个时,它才起作用,下面是我的参数顺序示例。
URL参数URL工作示例
https://url.com/app.php?source=app&order_id=274&order_name=手机黑色
URL参数URL不工作示例
https://url.com/app.php?order_id=274&order_name=手机黑色&source=应用
注意两个URL 中的位置源=应用程序参数
我使用下面的代码来隐藏元素
<?php if(!isset($_GET['source']) || $_GET['source'] != "app"): ?> HTML <?php endif; ?>
我错过了什么吗?
您需要对url进行url编码,以避免&
:等特殊字符
$url = "https://url.com/app.php?".urlencode("source=app&order_id=274&order_name=phone-black");
这导致
https://url.com/app.php?source%3Dapp%26order_id%3D274%26order_name%3Dphone-black
并且应该可以在所有浏览器上工作。
根据我的理解,您希望根据URL参数隐藏web应用程序的某些部分,为此,我希望以下代码对您有所帮助:
$header = true;
if ( isset( $_GET['source'] ) ) {
if ( $_GET['source'] == 'app' ) {
$header = false;
}
}
if ( $header === true ) {
// Your HTML
}
现在,您的代码将在不考虑参数序列的情况下工作。