は私のコードです:スーパーグローバルをPHPコードで初期化していますか?ここ
$order_newest = $order_votes = $order_featured = $order_frequent = '';
if (isset($_GET['o']) || isset($_COOKIE['qanda_questions_order'])) {
// To read from the cookie
if (!isset($_GET['o'])) {
$_GET['o'] = $_COOKIE['qanda_questions_order'];
} else {
setcookie("qanda_questions_order", $_GET['o'], 2147483647);
}
switch ($_GET['o']) {
case 'newest':
$order_newest = 'order_active';
break;
case 'votes':
$order_votes = 'order_active';
break;
case 'featured':
$order_featured = 'order_active';
break;
case 'frequent':
$order_frequent = 'order_active';
break;
default:
$order_newest = 'order_active';
break;
}
} else {
$order_newest = 'order_active';
}
見ての通り、私はこの行のsupergobalを初期化してきました:
$_GET['o'] = $_COOKIE['qanda_questions_order'];
が正しいことことをしているのですか?または、超大国のみをURL (取得方法)の渡されたパラメータとして使用する必要がありますか?
さらにこのロジックを書くことができますか? (私にはプロフェッショナルではないようです)
なぜ、別の変数の代わりにスーパーグローバルを使用していますか? –
@ Don'tPanic * 'switch'でスーパーグローバルを使用したので* –
これは完璧です。 '$ o = $ _GET ['o'];'を実行してから '$ o'を使用する必要がなくなります。 – AbraCadaver