私はグローバル$connection
のクラスを持っていますが、私はそれにアクセスしようとするとNULLになっています。あなたがコンストラクタ内でアクセスしようとするとわかるように、私はNULLを取得しません。しかし、getConnection()
から私はNULLを取得しています。接続を開始しようとすると、なぜNULLになるのですか?
class DatabaseManipulation
{
private $connection;
function __construct()
{
global $connection;
$connection = new mysqli("localhost", "root", "", "db");
$result = $connection->query("select * from user");
print_r($result); //I get an array
}
function getConnection(){
global $connection;
var_dump($connection); // I get -> object(DatabaseManipulation)#1 (1) { ["connection":"DatabaseManipulation":private]=> NULL } NULL
}
}
オブジェクトをインスタンス化するときと同じことが起こります。$connection = new DatabaseManipulation();
。私は何か間違っているのですか?私はこれがOOのやり方で行われることを望みます。誰でも助けてくれますか?
私はまだエラーが取得しています:注意:未定義の変数を:で接続.... –
どこコードですか? '$ this-> connection-> query(" select * from user ");' – Federkun
ここを見てみよう - > http://pastebin.com/DCvXLkiT –