ユーザーがアクセスした URL を知りたい。たとえば、ユーザーがアクセスした場合:
index.php?登録
「1」がエコーされます。
if (isset($_GET))
{
switch ($_GET)
{
case "register":
echo 1;
break;
}
}
しかし、それは何もしません、なぜですか?最初の GET 要素の名前を取得するにはどうすればよいですか?
$_GET
配列です。その switch ステートメントを foreach ループ内に配置する必要があります。
foreach ($_GET as $k => $v) {
switch ($k) {
case 'register':
echo 1;
break;
}
}
また、$_GET
スーパーグローバルは常に設定されています – 必要はありませんif (isset($_GET)) {
を使用array_keys()
して各 $_GET のキーを取得し、 を使用0 index
して最初のキーで何をしたいかを決定できます。
if($_GET){
$keys = array_keys($_GET);
switch ($keys[0]){
case "register":
echo 1;
break;
}
}
$_GET
スーパーグローバル配列です。常に設定され、常に配列です。
register
それが常に最初の GET 要素になることがわかっている場合は、次のようにすることができます。
reset($_GET);
switch (key($_GET)){
case "register":
echo 1;
break;
}
のドキュメントkey()
: http://php.net/key
$_GET は連想配列なので、key=value
要素で構成されています
次の URL を使用できます:index.php?page=register
次のコード:
if (isset($_GET['page']))
{
switch ($_GET['page'])
{
case "register":
echo 1;
break;
}
}
または、この URL で次のindex.php?register
コードを使用します。
foreach ($_GET as $key => $value) {
switch ($key) {
case 'register':
echo 1;
break;
}
}