1

次のコードがあります。

        public function get_users_theme($uid)
            {
                    $r = $this->db2->query('SELECT * FROM users_theme WHERE user_id="'.$uid.'" LIMIT 1', FALSE);
                    if ($this->db2->num_rows($r) > 0) {
                            $o->user_theme = new stdClass();
                            $ut = $this->db2->fetch_object($r);
                            foreach($ut as $l=>$s) {
                                    $o->user_theme->$l  = stripslashes($s);
            }
                            return $o->user_theme;
                    } else {
                            return FALSE;
                    }
            }

5 行目で次のエラーが発生しているようです。

厳格な基準: 空の値からデフォルト オブジェクトを作成する

どうすれば修正できますか?

ありがとう

4

1 に答える 1

4

$oオブジェクトとして使い始めるときは宣言されていないので、事前に stdClass オブジェクトにしてください:

$o = new stdClass();
$o->user_theme = new stdClass();

または、さらに良いことに$o->user_theme、その関数のすべての場所を$user_theme- に置き換えます。コードは特別なオブジェクトを必要としないように見えるため、通常の変数で十分です。

于 2012-05-18T13:27:07.507 に答える