[PHP-users 24118] 可変変数について
Koichi Shimamura
MAF01541 @ nifty.ne.jp
2005年 1月 13日 (木) 13:41:08 JST
島村です。
$_POST や $_GET を展開して利用しようと次のようなスクリプトを組みました。
1 <?php
2 foreach ($_GET as $key => $value) {
3 $$key = $value;
4 }
5 echo "aaa=$aaa, key=$key, bbb=$bbb";
6 ?>
これを次のように呼び出すと
http://192.168.0.3/test.php?aaa=456&key=123&bbb=789
このような結果となってしまいます。
aaa=456, key=bbb, bbb=789
2つ目の引数 key とスクリプト内で用いている $key がダブってしまってうまく変数
に値をセットできません。変数名がダブらないようにすれば期待通りに展開して値をセ
ットしてくれます。
$$key を ${$key} としても結果は同じでした。
register_globals が off に切り替わったための逃げの処理なのですが、皆さんどのよ
うにされていますか?
島村幸一
PHP-users メーリングリストの案内