• ベストアンサー

変数名を分割したり結合する方法

Yambal_netの回答

回答No.3

古いActionScriptで言うところの eval関数の事かな? だとしても現在使えないので 代理手段を探さなくてはいけませんね 方法は何個かあると思いますが、 確か、Objectで似たようなアクセスができたように思います var object:Object = new Object; var name:String = "str_"; var i:int = 1; var string:String = "Hoge"; o[name + i] = string; trace(o[name + i]); trace(o.str_1); ・・・Arrayでもできるかな? 机上論ですので、通らなかったら 真剣に考えます・・・w

sato777
質問者

お礼

ご指導頂きまして、有難う御座います。 参考にさせて頂きます。

関連する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
  • (AS3)「var mc:MovieClip = new MC?();」 の?の部分を変数にできないか

    タイトルの通りです。 今ライブラリには100個のムービークリップがあって、それぞれMC1~MC100までのリンケージ名(クラス名)でActionScriptに書き出しているものとします。 これらを動的に「var mc:MovieClip = new MC?();」というふうにしたいのですが、うまくいきません。 一応下のように自分なりに考えてみたのですがやっぱりダメでした。 var i:int = 3; var str:String = "MC"+i; var mc:MovieClip = new str(); stage.addChild(mc);

    • ベストアンサー
    • Flash
  • 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
  • 同じ名前の変数…

    数日前からPHPをはじめた者です。 クラス変数(という呼び方が適切かは??)と、その変数に値をセット/ゲットする関数を内包するクラスを作ってみたのですが、それに関してどうもピンと来ない部分があるので質問させてください。 以下がソースです。 class sample{ var $hensu; function set_hensu($str){ $hensu = $str; } function get_hensu(){ return $hensu; } } 上記クラスを使って値のセット/ゲットをしようとしたのですが、結果は×でした。 ファンクション内の変数を、thisで指定するとうまく行きました。 最初に指定した変数と、ファンクション内の変数を同一のものだと認識させるには、ファンクション内でのthis指定の他に方法は無いのでしょうか? もしくは、ファンクション内で書いた変数が新しい変数だと認識させない方法とか…。 無いなら諦めます。よろしくお願いします。 また、直接質問とは関係ないのですが、 どうしてPHPは変数名を書いただけで変数が作られてしまうのでしょう。メリットは何ですか? 分かりづらくて戸惑ってます。

    • ベストアンサー
    • PHP
  • php 変数(変数名)の結合について。

    php 変数(変数名)の結合について。 こんばんは。 phpでホームページを作成しておりますが どうも上手く動かないのでこちらに質問させて頂きました。 変数名$testに数字を連番で付け、 $test0 = (値1,値2,値3,・・・) $test1 = (値1,値2,値3,・・・) $test2 = (値1,値2,値3,・・・) と各変数に配列を代入したいと考えています。 そこで、for文を使用し、 for($i=0; $i<10; $++) {  $test.$i = (値1,値2,値3,・・・) } と記述た所、上手く動作せずに困っております。 二次元配列での代入は可能だと思いますが $test[0] = (値1,値2,値3,・・・) $test[1] = (値1,値2,値3,・・・) $test[2] = (値1,値2,値3,・・・) for($i=0; $i<10; $++) {  $test[$i] = (値1,値2,値3,・・・) } ※ 実験してませんけど・・・。 なるべく二次元は使わないで処理したく思いますが やはり二次元配列のが合理的でしょうか・・・。 その点も踏まえ、何方かご教授頂ければ幸いです。 宜しくお願いいたします。

    • ベストアンサー
    • PHP
  • getURLへの変数が参照されない

    こんにちは。 FLASH ActionScript2の、getURLへの変数が参照されない件で困っています。 MC1をRollOverするとテキストフィールドareaにTarea1(あ)が入り、 更にMC1をクリックするとTurl1(a)のURLに飛ぶ、というスクリプトを作っています。 しかし現状ですと、RollOverはうまくいくのですが、クリックしたときのgetURLがうまくいきません。 変数「a.html」に飛ばず、「Turl1.html」に飛んでしまいます。 変数が参照されていないということなのでしょうか。 なにぶん初心者ですので、質問自体に誤りがあるかもしれませんが、ご教授頂けたらと思います。 よろしくお願いします。 ■スクリプト var Tarea0 = ""; var Tarea1 = "あ"; var Tarea2 = "い"; var Tarea3 = "う"; . . var Tarea42 = "ゆ"; var Tarea43 = "よ"; var Tarea44 = "ら"; var Turl1 = "a"; var Turl2 = "i"; var Turl3 = "u"; . . var Turl42 = "yu"; var Turl43 = "yo"; var Turl44 = "ra"; i = 0; sx = 0; for (x=0; x<45; x++) { str = "mc"+String(i); _root["mc"+i].Tarea = "Tarea"+i; _root["mc"+i].onRollOver = function() { area.variable = this.Tarea; }; _root["mc"+i].onRollOut = function() { area.variable = "Tarea0"; }; _root["mc"+i].Turl = "Turl"+i + ".html"; _root["mc"+i].onRelease = function() { getURL(this.Turl); }; i++; } ■環境 WINDOWS XP FLASH8 ActionScript2.0

    • ベストアンサー
    • Flash
  • C#でフォームのオブジェクト名を変数名で指定

    C#でフォームのオブジェクトを変数名で指定するにはどうしたらよいでしょうか? 例えば、フォームにラジオボタンrdo0~rdo9と、 それぞれに対応するテキストボックスtxt0~txt9が用意されている状態で、 rdo1がチェックされていたらtxt1に"OK"と表示、 rdo2がチェックされていたらtxt2に"OK"と表示・・・ といったことをfor文で実現する場合どのようにしたらよいでしょうか? 変数をオブジェクト名として認識させるための方法がわかりません。 どなたかご教授願います。 ********************************************* for(int i=0;i<10;i++) {  rdoname = "rdo" + i;  txtname = "txt" + i;  if((何らかの処理?)(rdoname).checked)   (何らかの処理?)(txtname).txt = "OK"; } **************************************** ↑この、オブジェクトとして認識する為の「何らかの処理」部がわかりません。

  • 変数名に変数を使う

    Flash8を使用し、ActionScript2で書いています。 変数名に、他の変数の値を参照したいと考えています。 http://www.flash-jp.com/modules/newbb/viewtopic.php?topic_id=6679&forum=6 を見て、同じようにやってみました。 すると、 animal = "cat"; catlLegs = 4; とした場合、animalの値であるcatを参照し animalLegs = 4; とする、というような単純なものはうまくいきました。 しかし、SharedObjectのdataプロパティで、属性名を変数にしようとすると うまくいきません。 dataNameという変数に、soというSharedObjectのneko属性の値を代入する場合、 so:SharedObject = SharedObject.getLocal("hoge"); animal = "neko"; dataName = _root["so.data."+animal]; としたのですが、 trace(dataName); の値はundefinedになってしまいます。 なお、 trace(_root.so.data.neko); では正しく値が表示されます。 属性名前には他の変数の値を参照できないのでしょうか。 それともSharedObjectではできないのでしょうか。 なんとか実現する方法をおしえていただければと思います。 よろしくお願いいたします。

    • ベストアンサー
    • Flash
  • JavaScriptで変数名を取得する方法

    var 変数名 = new 関数名(引数1,引数2・・・);とした場合 alert(変数名.○○)などで変数名を表示する○○はあるでしょうか? 現在は引数1に変数名をセットして、関数内のプロパティに保持して、 alert(変数名.id)で表示できるようにしています。 ただしこれでは手間がかかったり、間違いが起こります。 もしそうでない方法があればご教授下さい。

  • 特定の変数の値をセッションを使わずに引き継ぐ方法

    PHPだと、output_add_rewrite_var()という関数 http://jp2.php.net/manual/ja/function.output-add-rewrite-var.phpで、 特定の変数をセッションを使わずに引き継ぐ方法があるのですが、 Perlで同じ事を実現できるでしょうか?