最近取り組んだプロジェクトで、PHP での変数の使用に関する新しい概念を発見しました。私のプログラムでは、1 ページ上の複数のレコードを同時に更新する必要がありました。長い間考え続けた後、偶然変数の概念が頭に浮かび、すべての混乱が消え去りました。
はじめに
変数と呼ばれる変数とは何ですか? PHPマニュアルによると、変数とは、変数の値を取得し、それを別の変数の変数名として使用する変数です。このステートメントは非常に単純に見えるため、文中で「変数」という単語を使用するステートメントと簡単に混同されます。簡単な例を挙げると、変数を定義します --- x はこれに等しい --- 次に、変数の変数を定義します。つまり、この例では、x の値を新しい変数の名前として使用します。この新しい変数の値は、cake です。 PHP で表現すると次のようになります。
$x = "これ";
$$x = "ケーキです";
?>
記号 $$ は、PHP における変数の表現です。これで、2 つの変数 $x と $$x を 2 つの異なる方法で参照できるようになります。
エコー "$x ${$x}";
?>
echo "$x $this";
?>
上記の両方のプログラムは this iscake を出力します。 echo ステートメントでは $$x が ${$x} と書かれていることに注意してください。これは、出力したいのは $ 文字と $x 変数ではなく、変数の変数であることを PHP に知らせるためです。
まだ混乱していますか?ああ、もしかしたら、もっと詳しくて役立つ例が必要ですか?次のセクションでは、変数を使用して 1 ページ上の複数のレコードを編集する方法を説明します。
例
関心のあるサイトへのリンクを保存する MySQL データベースがすでにあるとします。データベースには次のフィールドを持つテーブル送信があるとします。
提出ID
投稿者:
リンク
説明
承認されました
ここで、作成済みだが承認されていないすべてのリンクをテーブルに表示したいとします。編集ページでは、いくつかの入力エラーを修正し、適切なラジオ ボタンを使用して各レコードを [承認] に設定し、更新されたすべてのレコードをテーブルに送信できます。一度。
まず、データベースからすべてのレコードを抽出して表示するときに、各レコードに一意の名前を設定する必要があります。これにより、送信時に各レコードの値をループできるようになります。コードは次のとおりです:
//変数カウンターを初期化します
$index = 0;
$index_count = 0;
echo "