PHP check if url parameter exists

2019-01-22 10:52发布

I have a URL which i pass parameters into

example/success.php?id=link1

I use php to grab it

$slide = ($_GET["id"]);

then an if statement to display content based on parameter

<?php  if($slide == 'link1') { ?>
   //content
 } ?>

Just need to know in PHP how to say, if the url param exists grab it and do the if function, if it doesn't exist do nothing.

Thanks Guys

5条回答
做自己的国王
2楼-- · 2019-01-22 11:26

It is not quite clear what function you are talking about and if you need 2 separate branches or one. Assuming one:

Change your first line to

$slide = '';
if (isset($_GET["id"]))
{
    $slide = $_GET["id"];
}
查看更多
Animai°情兽
3楼-- · 2019-01-22 11:33

Use isset()

$matchFound = ( isset($_GET["id"]) && trim($_GET["id"]) == 'link1' );
$slide = $matchFound ? trim ($_GET["id"]) : '';

EDIT: This is added for the completeness sake. $_GET in php is a reserved variable that is an associative array. Hence, you could also make use of 'array_key_exists(mixed $key, array $array)'. It will return a boolean that the key is found or not. So, the following also will be okay.

$matchFound = ( array_key_exists("id", $_GET)) && trim($_GET["id"]) == 'link1' );
$slide = $matchFound ? trim ($_GET["id"]) : '';
查看更多
一纸荒年 Trace。
4楼-- · 2019-01-22 11:33

Why not just simplify it to if($_GET['id']). It will return true or false depending on status of the parameter's existence.

查看更多
Explosion°爆炸
5楼-- · 2019-01-22 11:43

Here is the PHP code to check if 'id' parameter exists in the URL or not:

if(isset($_GET['id']))
{
   $slide = $_GET['id'] // Getting parameter value inside PHP variable
}

I hope it will help you.

查看更多
Luminary・发光体
6楼-- · 2019-01-22 11:45
if(isset($_GET['id']))
{
    // Do something
}

You want something like that

查看更多
登录 后发表回答