2009/8/21 金曜日

CakePHP1.1でXML_Unserializerを使う際のエラー対処

Filed under: CAKEPHP — tiny-p @ 12:09:57

PEARのXML_Unserializer.phpをレンタルサーバで利用する際、
Fatal error: Call to undefined method: xml_parser->sethandlerobj()
といったエラーが。

XML_PARSERをバージョンアップすれば解決するらしいが、
レンタルサーバなのでそれができない。

そこでCakePHPのapp/vendersにXML_PARSERを置き
ini_set( ‘include_path’, get_include_path() . PATH_SEPARATOR . APP .’vendors’ );
としたが、現状は変わらず。

理由は、CakePHPの
app/webroot/index.php
CakePHPのルートディレクトリ/index.php
でinclude_pathを指定しているため。

app/webroot/index.phpの
ini_set(’include_path’, CAKE_CORE_INCLUDE_PATH . PATH_SEPARATOR . ROOT . DS . APP_DIR . DS . PATH_SEPARATOR . ini_get(’include_path’));

ini_set(’include_path’, CAKE_CORE_INCLUDE_PATH . PATH_SEPARATOR . ROOT . DS . APP_DIR . DS );
と修正。

CakePHPのルートディレクトリ/index.phpの
ini_set(’include_path’, ini_get(’include_path’) . PATH_SEPARATOR . CAKE_CORE_INCLUDE_PATH . PATH_SEPARATOR . ROOT . DS . APP_DIR . DS);

ini_set(’include_path’,ツ黴€ CAKE_CORE_INCLUDE_PATH . PATH_SEPARATOR . ROOT . DS . APP_DIR . DS);
と修正。

とすれば、デフォルトのinclude_pathを読み込まないため、問題が解決される。

コメント (0)

この記事にはまだコメントがついていません。

コメント RSS トラックバック URL

現在コメントフォームは利用できません。

Copyright (C) 2007 tiny-p. All Rights Reserved.