[PHP-users 31007] Re: Fatal error: Cannot redeclare
Katsuo Mogi
mogi-k2 @ msg.biglobe.ne.jp
2006年 12月 13日 (水) 08:17:51 JST
茂木です。
In the message [PHP-users 31004] Re: Fatal error: Cannot redeclare
<20061212195033.78A2.KUMAPOO @ zf7.so-net.ne.jp>
Kumapoo <kumapoo @ zf7.so-net.ne.jp> wrote:
> kumapooです。
> デバッグの案が出ているのですが、ソースいじれる実力もなく。。。
> とりあえず、できるとこやってみます。
> > この class.inc の中で config.inc を require してませんか.
> $ cat -n class.inc | grep config.inc
> →class.incでは呼んでいないみたいです。
> > あるいは本当に別のファイルを読んでいて,
> > 中身で configuration_data() を定義しているとか.
> 全ソースに対して、grepしてみました。
> $ grep -R configuration_data ../agency/*
> ../agency/lib/config.inc:function configuration_data() {
> ../agency/lib/fork.php: $agency = new AGENCY(configuration_data(),$page,"FORK");
> ../agency/lib/lib.php: $agency = new AGENCY(configuration_data(),$_GET["page"],$mode);
class.inc をrequireしているファイルをrequireしているのに、
さらにclass.incをrequireしているとかっていう感じではないでしょうか。
こんな風に。
file1.php
require "class.inc"
file2.php
require "file1.inc"
require "class.inc"
もっと階層が深かったり、複雑になっているかもしれませんけれど。
なのでまずはconfig.incをrequireなりincludeしているファイルをみつけて、
それをまたrequireしているファイルを探して、ってたどっていけば
どこが原因か分かるかも知れません。
もっとうまい方法があるかも知れないし、的外れでしたらすいません。
# 全部 require_once か include_once に統一されていれば起こらないんでしょうね。
--
---------------------------------
茂木克夫
mail: mogi-k2 @ msg.biglobe.ne.jp
site: http://www.momo.dyndns.org/~katsu/
---------------------------------
PHP-users メーリングリストの案内