2017-01-09 82 views
0

我需要幫助來更新使用該類內部函數的變量$host,$user,$password$db變量。Joomla Configuration.php如何使用函數更新類變量並將它們賦值

所以基本上在一個函數內部做一些工作,然後更新變量的值並讓它返回輸出。

例如我可以更新$this->user並回顯輸出。不過,我無法使用它更新類變量$user

<?php 
 
class JConfig { 
 
\t public $offline = '0'; 
 
\t public $offline_message = 'This site is down for maintenance.<br />Please check back again soon.'; 
 
\t public $display_offline_message = '1'; 
 
\t public $offline_image = ''; 
 
\t public $sitename = ''; 
 
\t public $editor = 'tinymce'; 
 
\t public $captcha = '0'; 
 
\t public $list_limit = '20'; 
 
\t public $access = '1'; 
 
\t public $debug = '0'; 
 
\t public $debug_lang = '0'; 
 
\t public $dbtype = 'mysqli'; 
 
    public $host = ''; 
 
    public $user = ''; 
 
\t public $password = ''; 
 
\t public $db = ''; 
 
    public $dbprefix = 'i1jud_'; 
 
\t public $live_site = ''; 
 
\t public $secret = ''; 
 
\t public $gzip = '0'; 
 
\t public $error_reporting = 'default'; 
 
\t public $helpurl = 'https://help.joomla.org/proxy/index.php?keyref=Help{major}{minor}:{keyref}'; 
 
\t public $ftp_host = ''; 
 
\t public $ftp_port = ''; 
 
\t public $ftp_user = ''; 
 
\t public $ftp_pass = ''; 
 
\t public $ftp_root = ''; 
 
\t public $ftp_enable = '0'; 
 
\t public $offset = 'UTC'; 
 
\t public $mailonline = '1'; 
 
\t public $mailer = 'mail'; 
 
\t public $mailfrom = ''; 
 
\t public $fromname = ''; 
 
\t public $sendmail = '/usr/sbin/sendmail'; 
 
\t public $smtpauth = '0'; 
 
\t public $smtpuser = ''; 
 
\t public $smtppass = ''; 
 
\t public $smtphost = 'localhost'; 
 
\t public $smtpsecure = 'none'; 
 
\t public $smtpport = '25'; 
 
\t public $caching = '0'; 
 
\t public $cache_handler = 'file'; 
 
\t public $cachetime = '15'; 
 
\t public $cache_platformprefix = '0'; 
 
\t public $MetaDesc = ''; 
 
\t public $MetaKeys = ''; 
 
\t public $MetaTitle = '1'; 
 
\t public $MetaAuthor = '1'; 
 
\t public $MetaVersion = '0'; 
 
\t public $robots = ''; 
 
\t public $sef = '1'; 
 
\t public $sef_rewrite = '0'; 
 
\t public $sef_suffix = '0'; 
 
\t public $unicodeslugs = '0'; 
 
\t public $feed_limit = '10'; 
 
\t public $feed_email = 'none'; 
 
    public $log_path = ''; 
 
\t public $tmp_path = ''; 
 
\t public $lifetime = '15'; 
 
\t public $session_handler = 'database'; 
 
\t 
 
}

<?php 
 
class updates 
 
{ 
 
    public $user; 
 
    function __construct(){ 
 
    $this->user = "user"; 
 
    } 
 

 
    function username() 
 
    { 
 
     return $this->user = "new_user"; 
 
    } 
 
    
 
     
 
} 
 

 
$updates = new updates(); 
 
echo $updates->username(); 
 

 
?>

+0

提供最小的可重現示例。 –

回答

0

創建三種方法username,password,db。

使用構造函數,用方法的結果更新變量。作品。

0

的VAR您提到的configuration.php中的iables指的是數據庫名稱,數據庫用戶和數據庫密碼,而不是joomla用戶。這與JUser對象無關,除非你移動你的站點,否則你永遠不會想改變它們。也就是說,這是整個網站的配置。

你爲什麼不開始通過改變用戶來解釋你試圖完成什麼。例如,您是否嘗試編寫CLI腳本來執行安裝,或者爲了便於將站點從一個數據庫移動到另一個數據庫?

+0

我想從這些變量的初始值開始,添加一對的函數來更新它們,然後將這些函數的值分配回這些變量 –

+0

因爲您想更改爲不同的數據庫?這些值位於配置對象中。所以你需要修改配置對象。 – Elin

+0

它確定我找到了解決方案。我不需要修改任何對象。我並不直接與Joomla合作。我想直接在configuration.php文件中工作並獲取和更新變量。 –

相關問題