如標題所示,訪問包含文件中的類(關聯數組)時出現問題。以下是源代碼類和包含文件:無法訪問包含文件中的變量
require("applications/cw_database.php");
require("config/dbConfig.php");
require("config/appConfig.php");
class APP_ASSESMENTS
{
private $dbObj;
private $DisplayOutput = "";
public function __construct($PageParams)
{
try
{
$dbObj = new CW_DB($dbConfig['hostname'],$dbConfig['username'],$dbConfig['password'],$dbConfig['name'],$dbConfig['port']);
} catch (Exception $e) {
throw new ErrorException($e);
}
}
...
另一部分與$ dbConfig無關。 另外這是所包含的文件(配置/ dbConfig.php):
/*
Testing configuration for MySQL database
*/
$dbConfig['username'] = "phpcoursework"; // changed on demand
$dbConfig['password'] = "phpcoursework"; // changed on demand
$dbConfig['hostname'] = "localhost"; // changed on demand
$dbConfig['name'] = "students"; // changed on demand
$dbConfig['port'] = 3306; // default for MySQL
如果您沒有以某種方式將'$ dbConfig'傳遞給您的類,您如何期望您的類知道它是什麼?答案建議使用'global'關鍵字,這是一種非常糟糕的做法,因爲它會污染變量空間,您可能很容易造成錯誤。如果你需要這個變量,只需將它傳遞給你的構造函數。 – 2012-03-15 11:47:00
在類中包含文件並將變量定義爲全局作品。 – Tosh 2012-03-15 11:49:12
如果這對你來說看起來很不錯,那就試試吧。 – 2012-03-15 11:54:48