2

最近、既存のサイトに小さな変更を加える必要があったため、ダウンロードして実行しようとしましたが、エラーが発生しました。

Call to undefined method sfContext::getController() in 
/home/user/www/site.com/web/index.php on line 16

ディスパッチ呼び出しの直前にindex.phpにこのコマンドを使用してこれらの行を挿入することにより、どのファイルがロードされているかを把握しようとしました。

$reflection = new ReflectionClass('sfContext');
$classFile = $reflection->getFileName();
die($classFile);

sfContext::getInstance()->getController()->dispatch();

そして、ロードされたファイルは次のように見えます:

/home/user/www/site.com/lib/vendor/symfony1.0/test/unit/sfContextMock.class.php

このsymfony1.0サイトは、元のサーバーでは正常に動作しますが、ローカルマシンでは動作しません。phpのバージョンとphp.iniを確認しましたが、同じです。なぜ間違ったクラスがロードされているのか、何が問題なのか理解できません。

これがindex.phpファイルです

<?php

define('SF_ROOT_DIR',    realpath(dirname(__FILE__).'/..'));
define('SF_APP',         'front');
define('SF_ENVIRONMENT', 'prod');
define('SF_DEBUG',       true);


require_once(SF_ROOT_DIR.DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.SF_APP.DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPARATOR.'config.php');

sfContext::getInstance()->getController()->dispatch();
4

1 に答える 1

1

利用可能な最新のもの( 1.0.22 )に更新する必要があります。

于 2012-11-12T19:29:16.547 に答える