[PHP-users 18861]Re: インデックス付きの配列の生成

Seto seto @ cii.gr.jp
2003年 11月 11日 (火) 16:51:10 JST


 Setoです。

>お世話になっております。井上ともうします。
>
>以下のようなインデックス付きの配列から別の配列を生成したいのですが、どうも
>うまくいきません。
>$form=array("お名前" =>"name","メイル" =>"mail","パスワード" =>"password");
>$count=0;
>foreach ($form as $key => $tmp){
>   if($arrcount > 0){$conf .=" , ";}

       $count のtypo ですかね

>       $conf .= sprintf("\"%s\" => \"%s\"",$tmp,$key); break;
>   $count++;
>   }
>}

ご自分でもお気づきのように この時点で
$conf は単なる文字列ですから いくら array()の中にいれても
ご希望の配列には展開されませんね。

>$confirm=array($conf);

単に上のforeachの中を
   $confirm[$temp] = $key;
で良いのでは。
# 場合によっては foreachの前に初期化を入れたほうがいいかも。

ただ注意点としては
異なる$keyに対して同じ$temp値ってことがあると
おかしなことになってきますね。


>例えば
>$confirm=array("name" =>"お名前","mail" =>"メイル","password" =>"パスワード
>");
>のような逆に生成した配列に変更したいのです。
>

*****************************************
 Junya Seto
*****************************************



PHP-users メーリングリストの案内