- ベストアンサー
$postflag=1とか$flag=1とかってなにを意味しているの?
CGIでperlを勉強してます。 アンケートフォームや掲示板などのデコード処理の中によく、$postflag=1;とか$flag=0;とか出てくるんですけど、この変数はなにを意味しているのですか?
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
勉強を始めたばかりの方とお見受けします。 小難しい説明だと理解しづらいですよね。 コーディングの暗黙的ルールとして flag(フラグ)というものは1か0です。(またはtrue/false、真/偽、on/off、などなど。。。) つまり2者択一をする場合の判定条件に使われる変数だと思ってください。 例えば性別を選ばせるアンケートフォームがあるとします。 で、女性と回答された場合のみ割引サービスの画面を見せたいって場合などに フラグを利用します。$seibetsu_flagとでもしましょう。 基本は$seibetsu_flag=0ですが"女性"と選択された場合のみ$seibetsu_flag=1となるよう プログラムを組んでおけば、後の処理で、 if ($seibetsu_flag=1) { ★女性なのでサービス画面表示する処理 } else { ★男性なので通常処理 } こんな感じで判定することができますよね。 $postflagは名前から察するにNo.3さんの回答の用途だと思いますよ。
その他の回答 (5)
- yuuki0229
- ベストアンサー率70% (33/47)
flagそのものを知らないのではないでしょうか。 flag(フラグ)とはプログラムの中で状態を保存する変数等の通称です。 訳したまんま、旗による目印です。 通常は if($flag){ flagが真だった時の処理 } のようにifの条件部で使われます。 分かりやすい変数名を使うのが一般的ですが"$flag"だけですと何のフラグかまでは分かりませんね。 "$postflag"は#3さんのような使われ方かなと想像しました。
- moon_night
- ベストアンサー率32% (598/1831)
>アンケートフォームや掲示板などのデコード処理の中によく、$postflag=1;とか$flag=0;とか出てくるんですけど、この変数はなにを意味しているのですか? これだけの情報では分かるわけありません。 何かしらのフラグを立てているのでしょうが、この質問だと、どんなスペシャリストでも解読不可能です。 例えば 本に 「その言葉は」とか「あの行動は」 というのが出てきますが、「その」や「あの」はどこを指している言葉ですか? と言う質問と同じで、原文がなければ答えようがありません。
- Terari
- ベストアンサー率37% (21/56)
NO.2の方が言ってるように、変数はプログラムによって違うのであれですが、もしかして‥‥という話。 フラグをたててるんじゃないかな。 $flag = 0; $postflag = 1; とかってフラグってなってるから、そう予想。 例えば(変な例ですが) #POSTかGETか調べる $flag=0; if ( $ENV{'REQUEST_METHOD'} eq "POST" ){ print "POSTです\n"; $flag=1; #条件がなりたてば(POSTなら)1に } if ( !$flag ){ print "GETです\n"; } #$postflagが0のままなら ってな具合。 いや、こんな変な使い方しないと思いますが‥‥いい例がわからなかったので。
- galluda
- ベストアンサー率35% (440/1242)
がると申します。 変数は各プログラムごとに違った意味合いを持つものなので。 まずは、そのプログラムを一式、この掲示板に貼り付けるのがよろしいかと思います。 そうでないと、誰もわからないと思うので。
- kochory
- ベストアンサー率45% (167/370)
その変数を使って条件分岐している部分を探せば 何をしているのか理解できると思います。
補足
えーっと、理解してないから質問させてもらってます。