mysqli_result::fetch_object mysqli_fetch_object 結果セットの次の行を取得し、オブジェクトとして返す &reftitle.description; &style.oop; public objectnullfalsemysqli_result::fetch_object stringclass"stdClass" arrayconstructor_args[] &style.procedural; objectnullfalsemysqli_fetch_object mysqli_resultresult stringclass"stdClass" arrayconstructor_args[] 結果セットから1行取得し、それをオブジェクトとして返します。 このオブジェクトは、結果セットのカラム名をプロパティとして持ちます。 値を取得した後は、この関数をコールするたびに結果セットの次の行の値を返します。 もう結果セットに行がない場合には &null; を返します。 もし2つ以上のカラムが同じ名前であった場合は、最後に現れた カラムが優先され、以前のあらゆるデータを上書きします。同名の複数のカラムに アクセスする場合、mysqli_fetch_row を用いて 数値添字配列を使用するか、あるいは SQL クエリ中の SELECT リストに異なる名前を与えるために、カラムにエイリアスを指定する 必要があります。 この関数がオブジェクトのプロパティを設定するのは、 オブジェクトのコンストラクタをコールする前であることに注意しましょう。 &database.field-case; &database.fetch-null; &reftitle.parameters; &mysqli.result.description; class インスタンス化してプロパティを設定後に返すクラスの名前。 省略した場合は stdClass オブジェクトを返します。 constructor_args オプションのパラメータの配列で、 class オブジェクトのコンストラクタに渡します。 &reftitle.returnvalues; 取得した行を表すオブジェクトを返します。 これは、個別のプロパティが結果セットのカラム名を表します。 結果セットにもう行がない場合には &null; を返します。 &return.falseforfailure; &reftitle.errors; constructor_args が空でないのに、 そのクラスがコンストラクタを持たない場合、 ValueError がスローされます。 &reftitle.changelog; &Version; &Description; 8.3.0 constructor_args が空でないのに、 そのクラスがコンストラクタを持たない場合、 ValueError がスローされるようになりました。 これより前のバージョンでは、 Exception がスローされていました。 8.0.0 constructor_args は、 引数を指定しない場合に [] を受け入れるようになりました。 これより前のバージョンでは、例外がスローされていました。 &reftitle.examples; <methodname>mysqli_result::fetch_object</methodname> の例 &style.oop; query($query); while ($obj = $result->fetch_object()) { printf("%s (%s)\n", $obj->Name, $obj->CountryCode); } ]]> &style.procedural; Name, $obj->CountryCode); } ]]> &examples.outputs.similar; &reftitle.seealso; mysqli_fetch_array mysqli_fetch_assoc mysqli_fetch_column mysqli_fetch_row mysqli_query mysqli_data_seek