$_POST 配列のコンテンツを完全にクリアしたいのですが、インターネットで見たすべての例は次のようになります。
if (count($_POST) > 0) {
foreach ($_POST as $k=>$v) {
unset($_POST[$k]);
}
}
教えてください、この変種はもっと良くなりませんか? (省資源の観点)
if (count($_POST) > 0) {
$_POST = array();
}
か否か ?
$_POST 配列のコンテンツを完全にクリアしたいのですが、インターネットで見たすべての例は次のようになります。
if (count($_POST) > 0) {
foreach ($_POST as $k=>$v) {
unset($_POST[$k]);
}
}
教えてください、この変種はもっと良くなりませんか? (省資源の観点)
if (count($_POST) > 0) {
$_POST = array();
}
か否か ?
はい、それで結構です。(スーパー)グローバルスコープ$_POSTを持っていることを除いて、単なる別の変数です。
$_POST = array();
...十分でしょう。ループは駄目です。他のファイルがそれを読み取ろうとしていて、それが配列であると想定している場合に備えて、設定を解除するのではなく、配列として保持することをお勧めします。
変数の設定を解除する$_POSTには、空の配列として再宣言します。
$_POST = array();
unset()と初期化の両方を組み合わせて使用できます。unset($_POST);
$_POST = array();
または、単一のステートメントで:
unset($_POST) ? $_POST = array() : $_POST = array();
しかし、あなたがこれをしたい理由は何ですか?
誰かがそれを使用する「理由」に答えるために、ページの更新後またはあるページから別のページに移動している間に $_POST 値を保存していたので、それを使用したくなりました。私の感覚では、これは良い習慣ではありませんが、それでも機能します。