[PHP-users 19819]Re: ループ内でのグローバル変数の宣言に関して
Osamu Shigematsu
shige @ ravi.ne.jp
2004年 1月 9日 (金) 16:16:26 JST
重松です。こんにちは。
> また、$h{$j}=$h{$j} + 1;
> という、変数名の書き方もこれでいいのか疑問です。
適当に書いて動いても、動いているうちに入らないと思います。
マニュアルで、「可変変数」について調べてみてください。
結論を言えば、
$hj = $h.$j;
++$$hj;
と書くのが普通と思われます。
PHP の場合、普通はすべてグローバルになります。
(関数やクラスの内部で宣言したものを除いて)
なので、$hoge = array(); とすれば、それでおしまいです。
ただ、PHP の配列は、配列ではなく「連想配列」なので、
注意してください。
$hoge = array(0,1,2,3);
unset($hoge[0]);
ver_dump($hoge);
とすればわかりますが、[] のなかに指定しているのはキーであり、
インデックス (配列の中での位置) ではないので、要素の追加や削除、
整列 (ソート) を行うと、普通の (?) 配列とは異なった挙動になります。
それから、新規の話題を返信で作成しないようにお願いします。
--
Osamu Shigematsu
http://www.ravi.ne.jp/%7eshige/
PHP-users メーリングリストの案内