[PHP-users 34252] Re: 再帰処理について

decoy youtube0318 @ gmail.com
2009年 1月 20日 (火) 09:25:12 JST


decoyです。

ありがとうございます。
下記のコードも参考にさせて頂きます。

// decoy

2009/01/18 22:40  <ikari-ml @ ecoin.jp>:
> ちょっと訂正
> $bと$cがいらなかったです
>
> ------------------------------------------------------
> $arr = array();
> $a = "";
>
> func1($hogehoge,&$arr,$a);
>
> function func1($hogehoge,$arr,$a){
>
>        foreach( $hogehoge as $key => $value){
>                if(is_array($value)){
>
>                        func1( $value,&$arr,$a."/".$key);
>                }else{
>                        array_push($arr,$a."/".$value);
>                }
>        }
> }
>
> ------------------------------------------------------
>
> foreach($arr as $value){
>        echo $value."\n";
> }
>
>
> On Sun, 18 Jan 2009 22:21:33 +0900
> ikari-ml @ ecoin.jp 様wrote:
>
>>碇です
>>
>>再起処理の場合は再帰呼び出しの方がいいと思います
>>階層がいくら深くなってもこのコードは動作します
>>
>>------------------------------------------------------
>>$arr = array();
>>$a = "";
>>
>>func1($hogehoge,&$arr,$a);
>>
>>function func1($hogehoge,$arr,$a){
>>
>>        foreach( $hogehoge as $key => $value){
>>                if(is_array($value)){
>>                        $b = $a."/".$key;
>>                        func1( $value,&$arr,$b);
>>                }else{
>>                        $c = $a."/".$value;
>>                        array_push($arr,$c);
>>                }
>>        }
>>}
>>
>>------------------------------------------------------
>>
>>foreach($arr as $value){
>>        echo $value."\n";
>>}
>>
>>On Sun, 18 Jan 2009 14:39:18 +0900
>>"decoy" <youtube0318 @ gmail.com> 様wrote:
>>
>>>decoyです。
>>>
>>>配列の順番を変えたり、増やしたりして動作確認しましたが
>>>下記のコードで特に問題は発生しませんでした。
>>>
>>>大変助かりました。
>>>ありがとうございます。
>>>
>>>また、何かありましたらご連絡させて頂ければと思います。
>>>
>>>// decoy
>>>
>>>----- Original Message -----
>>>From: "Takenori Higashimura" <oni @ izumi-si.co.jp>
>>>To: "PHP-users ML" <php-users @ php.gr.jp>
>>>Sent: Sunday, January 18, 2009 1:21 PM
>>>Subject: [PHP-users 34248] Re: 再帰処理について
>>>
>>>
>>>> 東村です。
>>>> 引数リストが違いますが、以下ではどうでしょうか。
>>>> PHP 5.2.6 では動作しました。
>>>> function hoge($hoge) {
>>>>  $a = array();
>>>>  foreach($hoge as $key => $value) {
>>>>    if (is_array($value)) {
>>>>      foreach(hoge($value) as $b) {
>>>>        array_push($a,$key . '/' . $b);
>>>>      }
>>>>    } else {
>>>>      array_push($a,$value);
>>>>    }
>>>>  }
>>>>  return $a;
>>>> }
>>>>
>>>> _______________________________________________
>>>> PHP-users mailing list  PHP-users @ php.gr.jp
>>>> http://ml.php.gr.jp/mailman/listinfo/php-users
>>>> PHP初心者のためのページ - 質問する前にはこちらをお読みください
>>>> http://oldwww.php.gr.jp/php/novice.php3
>>>
>>>_______________________________________________
>>>PHP-users mailing list  PHP-users @ php.gr.jp
>>>http://ml.php.gr.jp/mailman/listinfo/php-users
>>>PHP初心者のためのページ - 質問する前にはこちらをお読みください
>>>http://oldwww.php.gr.jp/php/novice.php3
>>
>>--
>>碇 永志
>> <ikari-ml @ ecoin.jp>
>>
>>_______________________________________________
>>PHP-users mailing list  PHP-users @ php.gr.jp
>>http://ml.php.gr.jp/mailman/listinfo/php-users
>>PHP初心者のためのページ - 質問する前にはこちらをお読みください
>>http://oldwww.php.gr.jp/php/novice.php3
>
> --
> 碇 永志
>  <ikari-ml @ ecoin.jp>
>
> _______________________________________________
> PHP-users mailing list  PHP-users @ php.gr.jp
> http://ml.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://oldwww.php.gr.jp/php/novice.php3
>


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