さて、最初のファイルでglobalを宣言しました 変数global $conn; 理由は正確にはわかりませんが、$ connはグローバルスコープであるため、とにかく問題なく機能します。
ただし、2番目のケースでは、globalを宣言します。 関数内の変数の場合、関数は$connを検索します これは、ローカル変数$connではなくグローバルスコープにあります どうやら接続ハンドルがあります。
global $connを削除します あなたの関数から、それは動作するはずです。
変数スコープの詳細-