• ベストアンサー

$_POST{ 変数 ] は出来ますか?

$_POST[" "]のカッコ内の文字に変数を用いる事は出来ますか? 例えば; $num = 001; $str = "aiueo" . $num; $aaa = $_POST[$str]; のような事ができればと思ったのですが、自分で試したところ上記のような事は出来ませんでした。 カッコ内の文字を変数などを使用し変更する事が可能であるのか、ご存知ありましたらご教授ください。また可能な場合その方法や参考HPを書き込みいただければと思います。よろしくお願いします。

  • PHP
  • 回答数2
  • ありがとう数8

質問者が選んだベストアンサー

  • ベストアンサー
noname#94983
noname#94983
回答No.1

???普通にできると思うが。 $num = 001; $str = "aiueo" . $num; $aaa = $_POST[$str]; このとき、$strにはどんな値が入っているだろうか。"aiueo001"ではないよ。"aiueo1"だ。このへん、勘違いしてはいまいか。

id_system
質問者

お礼

書き込みありがとうございました。 ご指摘の通り数値と文字列の扱いのところで勘違いをしていました。 ありがとうございました。

その他の回答 (1)

  • highton
  • ベストアンサー率23% (14/59)
回答No.2

用途がわからないのですが、POSTで送られてくる要素数が 変動するっていう前提ですよね? もしそうであれば、配列でデータを送信すればよいかと。 セレクトボックスのmultiple属性で使われる方法です。 回答になってなかったらすいません。

id_system
質問者

お礼

書き込みありがとうございます。 質問の趣旨とは違ったご回答ではありましたが、とても参考になりました。 ありがとうございました。

関連するQ&A

  • 変数名を変数で指定するのに$_POST[

    http://oshiete1.goo.ne.jp/qa2691790.html の#1さんに,変数名を変数で指定できることを教わりました. 下記の3行目のように,です. for ($i=1;$i<=5;++$i){ if (${"var".$i}=="") { ${"errMsg".$i}=$i."が未入力"; } } ここで, (1) $_POST["form"] には「str」という文字列が入っています. (2) $Var には「10」という数値が入っています. (3) これらを結合し, どうしても $_POST["str10"] みたいな変数を作らなければならないのですが, ・<? echo $_POST["str" . $Var]; ?>では何も起こらず. ・<? echo $_POST[{"str" . $Var}]; ?>などと{}で括っても, Parse error: parse error, unexpected '{', expecting ']' in C:\temp.php on line 10. みたいなエラーになります. どういうのが正しい書き方でしょうか?

    • 締切済み
    • PHP
  • 変数名の付け方について

    例えば<input type="text" name="aaa">というフォームからのPOSTを受け取るとき、 自分はよく $aaa = $_POST['aaa']; のようにするのですが、変数名とフォームの名前を重複させるのは良くないでしょうか。 またPHPに限らずですが、別のスコープで同じ変数名を使い回すのは問題ないでしょうか。 グローバル変数は慎重に考えますが、ローカル変数はついhogeやtestを使い回してしまいます。 初心者なもので分かりにくい文章になったかもしれませんが、ご教授お願いします。

    • 締切済み
    • PHP
  • actionscriptで、変数に変数を使いたい場合

    お世話になります、actionscript初心者です phpでは以下のようにすれば変数に変数の使用が出来ますが --- function test ($num){ $pops{$num} = "aaa"; print ($pops15); } test("15"); // aaaと表示される actionscriptで変数に変数を使いたい場合 どのように記述すれば良いのでしょうか? 以下のようなsampleを組みましたが出来ませんでした --- function test (Num){ var Pops[Num] = "aaa"; trace(Pops[15]); } play_button.onRelease = function (){ test(15); // シンタックスエラーになってしまう } 変数に変数を使用 actionscript など、もろもろで検索したり 人が制作したactionscriptを参照しましたが、ほしい情報は出てきませんでした。 actionscriptにはphpのような変数に変数を使用できる便利な記述方法はないのでしょうか? 分かる方、お手数ですがご教授よろしくお願い致します。

    • ベストアンサー
    • Flash
  • 変数名を合成

    a12=input,value というのを str="a" num="12" eval(ste+num)=input.value のように、2つ以上の文字列をくっつけた変数名を 使う方法はありませんか?

  • 変数 php

    スーパーグローバル変数はそのままでは文字列扱いにならないのでしょうか? 下記のように書くと 「htmlspecialchars()は第一引数は文字列である必要があります。」と出てしまいます。 str_replace("たいとる",htmlspecialchars($_POST['title'] ,ENT_QUOTES),$files); 以下の構文(sql)は動きませんでした。 $stmt="select * from $_POST['title'] "; 両方とも、変数に置き換えて再度書き直すと正常に動きました。 例、 $title=$_POST['title']; str_replace("たいとる",htmlspecialchars($title,ENT_QUOTES),$files);

    • ベストアンサー
    • PHP
  • 外部テキストの値を得るには?

    フラッシュ初心者&質問するのが初めてなので うまく伝わるかどうか心配ですがよろしくお願いいたします。 外部テキストnum.txtにはstr=5という記述があります。 このnum.txtを取り込んで、 5という数値をflash側で変数aaaに代入しました。 --------------------------- var vars = new LoadVars(); vars.load("num.txt"); vars.onLoad = function(num){ if(num){ aaa= vars.str; trace(aaa); } } --------------------------- この場合、ちゃんと5と出力されます。 しかしこの関数内のaaaという変数を他でも利用したいのです。 (例えばvar menu_num:Number = aaa;というように) 単純に下のように記述すると --------------------------- var vars = new LoadVars(); vars.load("num.txt"); vars.onLoad = function(num){ if(num){ aaa= vars.str; } } var menu_num:Number = aaa; trace(menu_num); --------------------------- undefinedが出力されます。 この時にちゃんと5と出力させるにはどうしたらいいのでしょうか。 いろいろグローバル変数など勉強しましたがうまくいきません。 ちなみに外部テキストnum.txtのstr=5というのは、 5という数字のみでもかまいません。 とにかくテキストから数値を取り出す方法を考えています。 ご回答お願いいたします。

    • ベストアンサー
    • Flash
  • 正規表現の中の変数の中の演算子

    perlで正規表現を使おうとしています。 確認したい文字列は変数にしており その文字列には「?」が含まれています。 ------------------------ $str = "文字列" $exp = "test?aaa=bbb"; if ($str =~ /^sss.*${exp}$/){ #do something } ------------------------ これだと、ヒットしません。。 $expを"test\?aaa=bbb"にすることもできません。 正規表現にはこだわりません。 どうしたら、うまくマッチングできますかね。。 なにか案があれば教えてください。

    • ベストアンサー
    • Perl
  • rubyで、バッククォートの中に変数を使いたい

    rubyスクリプト中からコマンドラインを使いたいのですが、 バッククォートの中に変数を使うことが出来なくて、困っています。 どのようにすればよいでしょうか? ------------------------------------------------------------- str = "Hello World!" `echo str` ------------------------------------------------------------- 上記だと、文字列「str」が出力されてしまい、 期待する「Hello World!」の出力が得られません。(変数strが展開されない) 解決方法をご存知の方、何卒、よろしくお願い致します。

  • 変数名の連結

    以下のような配列があるとします。 $str[0] = aaa; $str[1] = bbb; $str[2] = ccc; foreachでまわし変数名を連結し代入するというような事は可能なの でしょうか? foreach ($str as $key => $val) { //$keyをechoすると012と表示 //ここで変数名を$data0,$data1のようにしたいがうまくいかない $data . $key = $val; //配列にするぶんには正常に動作しました $data[$key] = $val; }

    • ベストアンサー
    • PHP
  • レキシカル変数について

    レキシカル変数の書き方について質問なのですが、色々なスクリプトを見ると書き方が色々あり、違いが分かりません。 例) my $test=0; my($test)=0; my @test=(0,1,2,3,4,5); my(@test)=(0,1,2,3,4,5); 上記の場合、それぞれカッコがある場合とない場合の違いはあるのでしょうか? 参考になるサイトでも構いませんので、どなたかご存知の方教えていただけませんか。

    • ベストアンサー
    • Perl

専門家に質問してみよう