致命的エラー: MySQL 結果オブジェクトを配列に変換
このシナリオでは、「mysqli_result 型のオブジェクトを配列として使用できません」というエラーが発生しますMySQL 結果オブジェクトを配列として処理しようとしたため。問題のあるコードは行 303 にあり、開発者は in_array() を使用して特定の値が配列内にあるかどうかを確認します。ただし、$followingdata['usergroupid'] 変数は、実際には配列ではなく MySQL 結果オブジェクトを保持します。
解決策:
この問題を解決するには、開発者は次のことを行う必要があります。 in_array() などの配列ベースの操作で使用する前に、MySQL 結果オブジェクトを配列に変換します。この変換を実現する 2 つの一般的な方法は次のとおりです。
これらのメソッドのいずれかを使用するようにコードを変更することで、開発者は、 MySQL 結果オブジェクトを配列に変換し、303 行目で目的の操作を続行できるようにします。更新されたコードの例は次のとおりです。
<code class="php">//Check if requested username can be followed. $followingdata = $result->fetch_assoc(); if (in_array($followingdata['usergroupid'], explode("|", $vbulletin->options['subscribetouser_usergroups_cannot']))) { exit; }</code>
この修正を実装すると、エラーが解決されるはずです。 Web サイトは期待どおりに開くことができます。 PHP プログラミングでは、潜在的なエラーを回避し、アプリケーションの安定した機能を確保するには、MySQL の結果オブジェクトと配列を正しく処理することが重要であることに注意してください。
以上がPHP で「mysqli_result 型のオブジェクトを配列として使用できません」というエラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。