2017-01-09 6 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

создать три метода имя пользователя, пароль, дБ.

Использовать конструктор, обновлять переменные в результате методов. Работает.

0

Посмотрите на плагинах и pluginevents

https://docs.joomla.org/Plugin/Events/User

+0

буквально никакой помощи вообще. –

+0

Это, когда вы хотите изменить объект JUser –

+0

, я не хочу, хотя, опять же никакой помощи. thanks –

0

Значение переменной iables в файле config.php, о котором вы упоминаете, относятся к имени базы данных, пользователю базы данных и паролю базы данных, а не к пользователю joomla. Это не имеет никакого отношения к объекту JUser, и вы никогда не захотите их менять, если вы не перемещаете свой сайт. То есть, это настройка для вашего сайта в целом.

Почему бы вам не начать с объяснения того, что именно вы пытаетесь выполнить, изменив пользователя. Например, вы пытаетесь написать сценарий CLI для установки или для облегчения перемещения сайта из одной базы данных в другую базу данных?

+0

Я пытаюсь начать с начальных значений, которые имеют эти переменные, добавить пару функций для их обновления, а затем присвойте значение из этих функций обратно этим переменным –

+0

Поскольку вы хотите перейти на другую базу данных? Эти значения находятся в объекте конфигурации. Поэтому вам нужно будет изменить объект конфигурации. – Elin

+0

его нормально я нашел решение. Мне не нужно изменять какой-либо объект. Я не работаю напрямую с Joomla. Я хочу работать непосредственно внутри файла configuration.php и получать и обновлять переменные. –

 Смежные вопросы

  • Нет связанных вопросов^_^