小さな問題があります。検索してみましたが、検索語句がうまく当てはまらず、誰か助けてくれることを期待していました。
システムのすべてのページに、次のように機能するインクルードがあります。
<?PHP
require_once("class.system.php");
require_once("class.mysql.php");
$oMySQL = new MySQL();
$oSystem = new SystemClass();
... ?>
しかし、私には問題があります。ご想像のとおり、MySQL クラスは、MySQL 呼び出しを簡単にするために使用する一連の関数です。これは私が使用したい唯一の例ではありませんが、良い例です。
MySQL クラスを参照できるようにしたいシステム クラスに関数があります (逆もまた同様です...)。
例として、MySQL からのデータをセッション変数に入力するシステム クラスの関数があります。私がこれを行うことを考えることができる唯一の方法(私が知っているのは間違っています...)は次のとおりです。
class SystemClass {
function PopulateSession(){
global $oMySQL;
if($oMySQL->Select('abc')){
$_SESSION['def']= blahblahblah;
return true;
} else {
return false;
}
}
}
それは機能しますが、それは私がそれを使用したいすべての機能を意味します。グローバルを使用する必要があります。これは非常に悪い習慣だと確信しています。誰かがアドバイスできますか??
ありがとう