2017-01-22 84 views
1

我有兩個文件,一個config.php和一個子目錄中的source.php。在配置文件中我有一些看起來像這樣結合php字符串

<?php 
//app settings 
$GLOBALS['app_url'] = 'http://www.website.com/subdirectory'; //ex: 
//demo mode 
$GLOBALS['demo_mode'] = 0; //possible values: 0 or 1 
$GLOBALS['db_table']['sms'] = 'sms_numbers'; 
$GLOBALS['db_table']['sms_history'] = 'sms_history'; 
?> 

在config.php文件,我有這個字符串$GLOBALS['app_url'] = 'http://www.website.com/subdirectory';爲基礎URL,我想讓這個被自動檢測到基地網址。我想用類似<?php echo "http://" . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']; ?>的東西。我在不同的目錄下使用這些文件,這就是爲什麼我想要將它們結合起來以使其自動化,而不必每次創建新的子目錄時手動更新基本URL。 另外,裏面的config.php我有:

//Admin access 
$GLOBALS['admin_username'] = 'admin'; 
$GLOBALS['admin_password'] = 'password'; 

這些值不是在一個數據庫中,但本地文件名爲source.php,我希望能夠更新值「admin」和「密碼「從這個source.php文件。 在source.php文件裏,我想我必須有這樣的東西:$username = 'admin'; 我真的很抱歉,但我是新人,想了解這個東西。我感謝任何幫助,我可以得到。 謝謝

+1

我不是100%確定你的問題是描述,但也許你只是想串接兩個字符串http://php.net/manual/de/internals2.opcodes.concat.php –

回答

1

使用在config.php

define('APP_URL', 'http://www.website.com/subdirectory'); 

全局常量然後在代碼的任何地方,你可以這樣做:

$path = APP_URL . "/path/to/file" 

我不建議存放admin_username和ADMIN_PASSWORD爲全局變量或常量,相反,你可以在你的config.php中創建一個包含值的類。

配置實例:

的config.php

在index.php文件
define('APP_URL','http://www.website.com/subdirectory'); 
define('DEMO_MODE',0); //possible values: 0 or 1 
..... 

class DB{ 
    var $conn; 

    public function __construct() 
    { 
     $user = "admin"; 
     $pass = "pass"; 
     $host = "127.0.0.1"; 
     $database = "database_name"; 
     $this->conn = mysqli_connect($host, $user, $pass, $database); 
    } 
} 

然後你做:

require_once("config.php") 
$db = new DB; 
$conn = $db->conn(); 
.... 
+0

謝謝! @deepblue,我會試試這個。 –