これは最も奇妙なバグです!おそらくばかげたものですが、修正方法がわかりません。誰かが助けてくれたら、私はとても感謝しています!3 つのファイルがあり、1 つは items.php と呼ばれ、もう 1 つは tableFunctions.php と呼ばれ、3 番目は mysql.php と呼ばれます。「mysql」と「tableFunctions」という 2 つのグローバル オブジェクトを使用します。それらは、それぞれ「mysql.php」および「tableFunctions.php」ファイルに保存されます。各ファイルで、そのオブジェクトのインスタンスを作成し、それをグローバル変数 $_mysql または $_table に割り当てます。このような:
ファイル mysql.php 内:
global $_mysql;
$_mysql = new mysql();
ファイル tableFunctions.php で:
global $_table;
$_table = new tableFunctions();
動作するはずの方法は次のとおりです。
items.php ファイルには tableFunctions.php ファイルが含まれています...これには mysql.php ファイルが必要なので、それも含まれています。
items.php ファイルでは、getTable() メソッドを呼び出します。このメソッドは、オブジェクト tableFunctions.(および変数 $_table.) に含まれています。次のように:
$t = $_table->getTable('items');
getTable 関数は、メソッド arrayFromResult() を呼び出します。このメソッドは、オブジェクト mysql.(および変数 $_mysql.) に含まれています。次のように:
$result = $_mysql->arrayFromResult($r);
そこでエラーが発生します。PHP は、変数 '$_mysql' が未定義であると言っていますが、私はそれを 'mysql.php' ファイルで定義しました (上記を参照)。次のコードで mysql.php も含めました。
include_once 'mysql.php';
何が悪いのかわからない!誰かがそれを助けることができれば、それは大歓迎です。ソース ファイルは次のリンクからダウンロードできます: https://www.dropbox.com/sh/bjj2gyjsybym89r/YLxqyNvQdn