私がしたいのはこれです:
class DB extends mysqli {
...
}
DB :: connect( ... );
DB :: query( "SELECT * FROM myDB" );
class AnotherClass {
function helloWorld()
{
DB :: query( "SELECT * FROM withoutUsingGlobalKeyword" );
}
}
function functions()
{
DB :: query( "SELECT * FROM withoutUsingGlobalKeyword" );
}
この質問のポイントは、次のような「グローバル」キーワードの使用を避けることです。
global $mysqli;
$mysqli = new mysqli( ... );
class AnotherClass {
function helloWorld()
{
global $mysqli;
$mysqli->query( "SELECT * FROM IDontWantToUseGlobalKeyword" );
}
}
function functions()
{
global $mysqli;
$mysqli->query( "SELECT * FROM IDontWantToUseGlobalKeyword" );
}
これに対する解決策は、$ _ ENV配列でmysqli変数を宣言することですが、MYSQLIを管理するために$ _ENVを使用したくないので、DBのような静的クラスを使用したいです(それは可能ですか?)