2008年8月 8日

[PHP-users 33958] Re:多次元配列について

岡本です。
こんな感じですかね。

とりあえず、配列に値を代入する時はなるべく初期化して使用した方が良いかと
思います。

$array = array(
'b:秋田',

'b:秋田',
'c:群馬',
'c:千葉',
'c:埼玉',
'g:京都',
'g:大阪',
);

$cnt = count($array);
$data = array();
for($i = 0; $i < $cnt; $i++){
$tmp_arr = explode(':',$array[$i]);
$data[$tmp_arr[0]][] = $array[$i];
}
var_dump($data);

//結果
array(3) {
["b"]=>
array(2) {
[0]=>
string(7) "b:秋田"
[1]=>
string(7) "b:秋田"
}
["c"]=>
array(3) {
[0]=>
string(7) "c:群馬"
[1]=>
string(7) "c:千葉"
[2]=>
string(7) "c:埼玉"
}
["g"]=>
array(2) {
[0]=>
string(7) "g:京都"
[1]=>
string(7) "g:大阪"
}
}


On Fri, 8 Aug 2008 19:52:14 +0900
ken@xxxxx wrote:

>  初歩的な質問で済みません。
>  サンプルですが配列 $i を
>
> $i = array(
> 'b:秋田',
> 'b:秋田',
> 'c:群馬',
> 'c:千葉',
> 'c:埼玉',
> 'g:京都',
> 'g:大阪',
> );
>
> 以下のようにしたいのですが
>
> [b] => arrar('b:秋田', 'b:秋田')
> [c] => arrar('c:群馬', 'c:千葉', 'c:埼玉')
> [g] => arrar('g:京都', 'g:大阪',)
>
>  どのようにすれば宜しいのでしょうか。
>
> 稚拙ながら試した見たのですが、
> foreach($i as $value){
>  $j = explode(':', $value);
>  array_push($k[$j[0]], $value);
> }
>  3つのkeyまではできたのですが、その先、止ってしまい
> ました。
> アドバイス頂ければ幸いです。
>
> 小芝
>
> _______________________________________________
> PHP-users mailing list PHP-users@xxxxx
> http://ml.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://oldwww.php.gr.jp/php/novice.php3

_______________________________________________
PHP-users mailing list PHP-users@xxxxx
http://ml.php.gr.jp/mailman/listinfo/php-users
PHP初心者のためのページ - 質問する前にはこちらをお読みください
http://oldwww.php.gr.jp/php/novice.php3


投稿者 xml-rpc : 2008年8月 8日 20:19
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/76081
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。