0

symfonyプロジェクトでphp-gaサードパーティライブラリを使用しようとしています。ライブラリをにインストールし、キャッシュをクリアすると、 config_autoload.yml.phpapps/<app>/libに期待どおりにサードパーティのファイルが表示されます。

'tracker' => 'C:/wamp/www/apps/api/lib/php-ga/GoogleAnalytics/Tracker.php',
'transaction' => 'C:/wamp/www/apps/api/lib/php-ga/GoogleAnalytics/Transaction.php',
...

ただし、同じアプリで次のようにアクションでクラスを使用しようとすると、次のようになります。

use UnitedPrototype\GoogleAnalytics;

public function executeNew(sfWebRequest $request)
{
   $tracker = new GoogleAnalytics\Tracker(...);
   ...

クラスを解決できないというエラーが表示されます。

致命的なエラー:クラス'UnitedPrototype \ GoogleAnalytics \ Tracker'がC:\ wamp \ www \ apps \ api \ modules \ encoding \ actions\actions.class.phpに見つかりません

私は何が欠けていますか?

4

1 に答える 1

3

Symfonyのオートローダーは名前空間クラスを正しくロードできません。ga libをに移動し、 (のように)lib/vendor/php-ga独自のオートローダーを使用する必要があると思います。config/ProjectConfiguration.class.phprequire_once __DIR__ . '/../lib/vendor/php-ga/autoload.php'

于 2012-09-02T18:14:42.827 に答える