[PHP-users 25766] Re: 関数内関数の正しい定義方法

TAKAHARA, Kuniaki webmaster @ kitsune.info
2005年 6月 9日 (木) 17:32:57 JST


kitsune.info です。

On 2005-06-09, at 17:11, Yusuke ITO wrote:

> <?php
>   function foo(){
>     function bar(){
>       echo('bar<br>');
>     }
>     bar();
>   }
>
>   foo(); // ←1回目
>   foo(); // ←2回目
> ?>
>
> 呼び出しますと
>
> bar   ←1回目の出力
>
> Fatal error: Cannot redeclare bar() (previously declared in /home/ 
> www/hoge.php:4) in /home/www/hoge.php on line 3
>

     if (!function_exists(bar)) {
       function bar(){
         echo('bar<br>');
       }
     }

これじゃだめですか。ちっともエレガントではないけどー。


> #関数を外に出すのはナシでw

最初に思いついたのは「クラスにしちゃえ」でしたけど、これも趣旨が 
それますね :-P

================================================
kitsune.info <webmaster @ kitsune.info>
http://kitsune.info
================================================
/*  Living is giving, and being given. */



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