0

データベースから取得した stdClass があります。

$query = $this->db->get('news');

if(isset($options['id']) || $options['limit'] == 1)
    return $query->row(0);

そして、それを自分の変数に渡したい:

$data['news'] = $this->front_model->getNews($spec);

するだけで任意のプロパティにアクセスできるように$data['news']->id

しかし、私はこのメッセージエラーを受け取ります:

メッセージ: クラス stdClass のオブジェクトを文字列に変換できませんでした

なぜ?

4

1 に答える 1

2

それ以外の

return $query->row(0);

これを使って

return $query->row_array(0);

すでに結果を配列形式でフェッチします

http://codeigniter.com/user_guide/database/results.html

最初に$query->row()から0を削除します。これは、単一のレコードのみをフェッチするためです。次にprint_r($ data)を実行して、何が来るかを確認します

また、これを行います

$news = $this->front_model->getNews($spec);

それ以外の

$data['news'] = $this->front_model->getNews($spec);

今、あなたはそれをこのように呼ぶことができます

echo $news->id;
于 2012-08-03T03:37:38.793 に答える