雨谷の日和

過去12年で1,600を超えるアニメの第1話だけは見続けた僕のお勧めアニメがハズレなはずがない

人狼BBS作成日記32

受け取ったパラメータは、先日も書いたように、以下のような形で渡されます。

date=20040929&name=Alice

従って、今度はこれを使い易いように切り分けないといけないわけです。
ということで、以下のようにして連想配列に格納してみます。

  @pairs = split( /&/, $query );
  foreach $pair (@pairs) {
    local($name, $value) = split(/=/, $pair);
    $Query_Tbl{ $name } = $value;
  }

まずはqueryに格納されている文字列を「&」でsplitしてやり、パラメータの名前と値をpairsという配列変数に格納します。
次にそのpairsの要素の数だけforeachで繰り返し、その一つ一つについて今度は「=」でsplitすることで、nameとvalueに切り分けます。
切り分けたnameとvalueは、Query_Tblという連想配列に紐付けする形で格納していきます。
上記のようにすると、以下のようにして値を参照することができるようになります。

print "date --> $Query_Tbl{'date'}\n";
print "name --> $Query_Tbl{'name'}\n";

上記の結果は、「date --> 20040929」「name --> Alice」といったものになります。


さて、ここまでで目的のようなことはできるのですが、パラメータの受け取り方にはいくつかの注意点があるので、次はそれも見ておきます。