2016-06-01 16 views
0

私はcakephp 2とwebsocketsのラチェットフレームワークを持っています。このすべてはaws ec2で動作します。私はいくつかのPHPのクラスを作成し、このようにCakePHPのモデルを使用しよう:私は、サーバー(wsserver)を起動し、私はfoo関数を呼び出すまで、すべてが正常に動作しcakephpモデルを読み込めません

<?php 

namespace some\name\space; 

use App; 
use CakeModel; 

App::uses('CakeModel', 'Model'); 

use Ratchet\ConnectionInterface; 

require_once 'path/to/autoload.php'; 
require_once 'path/to/Cake/Core/App.php'; 

class SomeClassThatUseRatchetThings { 

    public function foo(ConnectionInterface $from) { 
     $cakeModel = new CakeModel(); 
     ... 

。私がそれを呼び出すと、私は休暇中のエラーが発生します:

Class 'CakeModel' not found in /path/to/SomeClassThatUseRatchetThings.php on line 20

これはどうしてですか?私は何を逃したのですか?ありがとう。

答えて

0

非常に奇妙な動作です。私はこのようなrequire_once bootstrap.phpを追加しました:

require_once ROOT. DS . APP_DIR . DS . 'vendor' . DS . 'autoload.php'; 
require_once ROOT . DS . 'lib' . DS . 'Cake' . DS . 'Core' . DS . 'App.php'; 
require_once ROOT . DS . 'lib' . DS . 'Cake' . DS . 'bootstrap.php'; 

と、このエラーがなくなったが、別の1があった:

cannot redeclare class App.php

私が欲しいもの、私は別のファイルに二require_onceを移動しようとした私のコードは私を与えます。エラーもなく、ケーキモデルを使用する能力もありません。

関連する問題