"Içerir" kullanarak

2 Cevap php

Ben bir MySQL veritabanı içine bilgi ekler bir sınıf var. Ben sınıfın üstündeki alanları olarak belirlenen bağlantı değişkenler var. Ben sınıfı çalıştırdığınızda mükemmel çalışıyor.

Ben sadece ayrı bir dosyada sınıf alanları (bir sınıf değil bir dosyaya kaydedilir, sadece alanları) saklamak istiyorum ve benim sınıf içine dahil olacaktır. Ama bunu yaparken, çalışmıyor. Neden bu?

GF

İşte Kod bulunuyor:

class RegChecker{


  //set database connection fields
public $hostname_db_conn = "localhost";
public $database_db_conn = "thesis_db";
public $username_db_conn = "root";
public $password_db_conn = "";
......
}

Ben sadece sadece bu dört alanları alıp basit bir php dosyasında saklamak istiyorum ve gerçek sınıf örneğin bunların yerine bunu dahil

class RegChecker{


  //set database connection fields
include ("db_connection_fields");
......
}

Ancak bu çalışmaz.

2 Cevap

You can't use include statement inside class, only inside methods. You can do something like this

class RegChecker {    
     function __construct() {
          $this->db_params = include 'db.conf.php';
     }
}

db.conf.php içeride

return array(
'host' => 'localhost',
'user' => 'root',
'pass' => '',
'db'   => 'thesis_db'
);

BTW, RegChecker bir veritabanına sınıf saptamadır bağlantısı için korkunç bir adıdır. Ayrı Db sınıf yapmak ve gereken her yerde bu örneği geçmek için yaygın bir uygulamadır.

Bir sınıfa bir sınıf ekleme vardır. Bu PHP çalışmaz.

Ben PHP bir sınıfa bu şekilde kod enjekte eğer anlamaya çalışıyorum.