- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:変数名の中に変数を代入する方法について)
変数名の代入方法について
このQ&Aのポイント
- 変数名の中に変数を代入する方法について説明します。規則的な代入方法を紹介し、エラーが発生する場合の解決策も示します。
- ソースコードの一部で変数を代入する方法について説明します。ループ処理を利用して簡潔なコードで代入できますが、エラーが発生する場合があります。
- 変数名の代入方法を解説します。ソースコードの例を用いて具体的な手順を説明し、代入時に起こるエラーに対する対処法も説明します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
元ソースを活かして書くなら、こんな感じでいかがでしょうか。 for($i=1; $i<4; $i++) { $var_name_current = 'test' . $i . 'a'; $var_name_next = 'test' . ($i + 1) . 'a'; $$var_name_current = $$var_name_next; } 配列を使うところかな、とは思いますが…
その他の回答 (1)
- osamuy
- ベストアンサー率42% (1231/2878)
回答No.2
ANo.1さんが言っているように、何故配列を使うほうが良いかと。 $test_a = array( 1, 2, 3, 4 ); array_shift( $test_a ); # 先頭要素を消して、前に詰める。 array_push( $test_a, '' ); # 末尾に空白を追加。 逆に、配列を使わない理由が分からなかったり。
- 参考URL:
- http://www.ideone.com/gMS8P
質問者
お礼
ご回答ありがとうございます。 確かに配列を使う方が良さそうですね。 ちなみに現在作成しているものの関係上、途中が削除され、その後が1つずつずれることもあるのですが、その場合、下記のようにunsetを使えば大丈夫そうな感じですね。 http://dhive.jp/blog/yama/?p=2193 以上、よろしくお願いします。
お礼
ご回答ありがとうございます。 ご教示いただいたソースで意図した動作となりました。 それとosamuyさんもご指摘のとおり、配列を使う方が良さそうですね。 ともあれ、このたびはどうもありがとうございました。 以上、よろしくお願いします。