岩井裕士
iwai.****@gmail*****
2010年 9月 12日 (日) 23:31:42 JST
はじめまして、岩井と申します。 CodeIgniter1.7.1 を利用していまして、以下のエラーが発生し、原因がわからず、困っています。 どなたか、同一の事象など発生した経験のある方はいますでしょうか? [Tue Aug 31 04:12:02 2010] [error] PHP Fatal error: Call to undefined method CI_DB_mysql_result::`3\xcc\x19\xf6*() in system/application/libraries/BaseModel.php on line 351 [Tue Aug 31 04:12:02 2010] [error] PHP Fatal error: Call to undefined method CI_DB_mysql_result::`3\xcc\x19\xf6*() in system/application/libraries/BaseModel.php on line 351 [Tue Aug 31 04:12:02 2010] [error] PHP Fatal error: Call to undefined method CI_DB_mysql_result::`3\xcc\x19\xf6*() in system/application/libraries/BaseModel.php on line 253 [Tue Aug 31 04:12:02 2010] [error] PHP Fatal error: Call to undefined method CI_DB_mysql_result::`3\xcc\x19\xf6*() in system/application/libraries/BaseModel.php on line 351 当初、データベースのカラム名に問題があるのでは、指摘されたのですが、カラム名は、すべてutf8で英数字のみで構成しています。 また、エラーが発生するのは、ある程度、運用してから発生するようで、原因がいまいち、わかりません。。。 なぜ、メソッド名が化けてしまうのか....。 Xcacheに起因する問題なのでしょうか? 何卒、ご教授の程、宜しくお願い致します。 上記のエラーの該当部分は、以下のような内容でエラー発生は、すべて result メソッドを呼び出す際に発生しています。 {code} function find($condition) { $this->db->stop_cache(); $this->db->flush_cache(); if (!is_array($condition)) { $condition = array('id' => $condition); } $entity_list = $this->db->get_where($this->table_name(), $condition); if ($entity_list->num_rows == 0) { return false; } $entity = NULL; foreach ($entity_list->result() as $row) { if (!isset($row->deleted)) { $entity = $row; break; } } $this->db->start_cache(); return isset($entity) ? $entity : FALSE; } {/code} サーバ環境は、以下の環境です。 CentOS release 5.4 (Final) $ uname -a Linux xxxxxxx.jp 2.6.18-164.6.1.el5 #1 SMP Tue Nov 3 16:12:36 EST 2009 x86_64 x86_64 x86_64 GNU/Linux $ php --version PHP 5.2.11 (cli) (built: Feb 8 2010 12:05:50) Copyright (c) 1997-2009 The PHP Group Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies with XCache v1.3.0, Copyright (c) 2005-2009, by mOo -- ---------------------------------------------------------------------- 岩井