cakePHP2.3 GMOペイメントのモジュールをつかう
app/Vendorにモジュールのディレクトリを配置して、require_onceする。
<?phpApp::uses('AppController', 'Controller');$vendor = App::path('Vendor');$path = $vendor[0] . 'gpay_client' . DS;set_include_path(get_include_path() . PATH_SEPARATOR . $path);App::import('Vendor', 'gpay_client/com/gmo_pg/client/tran/EntryTran');App::import('Vendor', 'gpay_client/com/gmo_pg/client/input/EntryTranInput');App::import('Vendor', 'gpay_client/com/gmo_pg/client/tran/ExecTran');App::import('Vendor', 'gpay_client/com/gmo_pg/client/input/ExecTranInput');モジュールディレクトリの場所をインクルードパスに入れる必要があるので、上記のような感じにした。
参考: App::import() でファイルをインクルードする
尚、GMOペイメントのモジュールは、コンストラクタが2つある。PHP5.4だとRedefining already defined constructorというエラーがでた。だからcore.phpの下記を修正して、エラーがでないようにした。
Configure::write('Error', array( 'handler' => 'ErrorHandler::handleError', //'level' => E_ALL & ~E_DEPRECATED, ←元の表記 'level' => E_ALL & ~E_DEPRECATED & ~E_STRICT, //←修正内容 //'level' => 0, 'trace' => true));PHP5を試してみる - コンストラクタの名称の統一 CakePHP2.xとPHP5.4でStrict Errorが出た場合の対処法