我只是问是否可以从 _GET 美元获得密钥......
我想做一个开关语句,比如
switch($_GET key) //here I don't know
{
case "login": .... break; //if "login" key exists in $_GET then show page.
....
}
对不起白痴问题
您可以使用简单的 for 循环迭代数组和键。 $_GET
只不过是一个关联数组(它使用字符串作为数组索引)。
使用foreach($_GET as $key => $value)
PHP 将拆分数组中的每个条目,$key
中的相应数组键和 $value
中的数组值。
foreach($_GET as $key => $value)
{
if($key === 'mykey')
{
// Do things with this key
}
if($key === 'login')
{
// Do login stuff etc...
if($value === 'adminarea')
{
// login to adminarea
}
if($value === 'forum')
{
// Login to forum
}
}
}
您也可以使用 array_key_exists
.这将检查某个是否存在,如果是,您可以对其进行处理。
if(array_key_exists('myKey', $_GET) && $value = $_GET['myKey']) {
// do stuff with $value
}
但这有点麻烦。就个人而言,我更喜欢将此功能用于简单的数组。
function array_get($array, $key, $default = null)
{
return (is_array($array) && array_key_exists($key, $array) ? $array[$key] : $default);
}
然后你可以做
if($value = array_get($_GET, 'myKey')) {
// do stuff with mykey
}
这更干净,并且具有描述性。它将始终返回 null 作为默认值,或者您可以设置自己的默认值。
$music_intensity = array_get($_GET, 'intensity', 11);
然后,如果未定义$_GET
值,则将11
作为值返回给$music_intensity
。
array_keys();
将从传递的参数返回一个键的 assoc 数组。
$arrKeys = array_keys($_GET);//$arrKeys will now contain all keys of $_GET (as an array)
看看: array_keys()
如果您已经知道键,并且想要从键中获取特定元素的值,请执行以下操作:
echo $_GET['myKey'];//which will print the value of the 'myKey' element