我想从URL中获取值,通过ID选择数据库中的数据。 我需要id的值。
例如,如果我打开www.example.com/index.php?id=12
。 我想要获得id = 12的值在数据库中。
如果我打开www.example.com/index.php?id=7
。
我想要获得id = 7的值在数据库中,依此类推。
网站网址:
http://www.example.com/?id=2
代码:
$id = intval($_GET['id']);
在PHP中,获取URL中的变量有两种方法:
当你的URL是:http://www.example.com/index.php?id=7
时,你可以通过 $_GET['id']
或者 $_REQUEST['id']
命令获取这个 id
并将其存储在 $id
变量中。
让我们来看一下:
// url is www.example.com?id=7
//get id from url via $_GET['id'] command:
$id = $_GET['id']
同样的将会是:
//get id from url via $_REQUEST['id'] command:
$id = $_REQUEST['id']
不同之处在于变量可以通过URL或POST
方法传递到文件。
如果变量通过URL传递,则可以使用$_GET['variable_name']
或$_REQUEST['variable_name']
获取它,但如果变量是通过POST
提交的,则需要使用$_POST['variable_name']
或$_REQUEST['variable_name']
来获取。
因此,如您所看到的,$_REQUEST['variable_name']
可用于两种方式。
$_GET
数组来获取该值。因此,id 值将存储在 $_GET['id']
中。$id
变量中,方法如下:$id = $_GET['id'];
$uri = $_SERVER["REQUEST_URI"]; //it will print full url
$uriArray = explode('/', $uri); //convert string into array with explode
$id = $uriArray[1]; //Print first array value
//www.example.com/index.php?id=7
print $_GET['id']; // prints "7"
$_REQUEST
,但如果你想获取GET
数据,应该使用$_GET
。这意味着你不应该使用$_REQUEST
。 - djot