[PHP-users 8309] Re: 関数の中に関数を入れる方法

しょうなり [ml] php-users@php.gr.jp
Wed, 26 Jun 2002 23:08:14 +0900


しょうなりです。

go さんは書きました:
>(test_1,test_2,test_4などが入っています。)をwhile文かforeach文などを使って 
>データがあるものだけを表示したいのですが、どうしたらよいのかわからないので 
>す。nameは必ず先頭に「test_」があってそのあとに番号が続きます。
>$_POST[test_1] ←この中の1を関数を使って表したいのです。

>while($_POST[test_$i]){

とりあえずこの行でエラーがでているのではないでしょうか?
$_POST["test_$i"] とか $_POST["test_".$i] でしょう。

それで、繰り返し文の条件判定で迷いそうですね。
$i に 5までとか上限があれば for文でよさそうですが、
上限がわからないのであれば、foreach か while(list()) で、
配列を総当たりして、name が "test_" ではじまり、value に値が
入っているものを抜き出せばいいでしょう。

"," の問題は、もりかわさんの示した方法の他に、
  $str .= ", $name = $value ";
みたいにそれぞれの$name/$valueペアを $strにいれて、最後に
  print substr($str, 2);
なんてするのはどうでしょうか?


>環境
>Apache 1.3.24

僕の管理しているサーバーでも、Apacheの放置プレイ中(>_<)

↓こっちのサーバーは対処したそうですが。
-- 
しょうなり@信州 肥田昌也
Email:     shounari@webappli.jp
HomePage:  http://www.webappli.jp/
	=> JSlayout プレビュー版(見〜る〜だ〜け〜)