Переменные, заданные в конструкторе, забыты?

То, что я пытаюсь сделать здесь, это сначала создать переменную $ sql_info и установите его в значение по умолчанию, тогда конструктор принимает один аргумент, который затем будет установлен в $ sql_info переменная. Если я сделаю echo $sql_info; внутри конструктора все работает нормально, но если я попытаюсь сделать это в другой функции, это ничего не отобразит на экране, даже значение по умолчанию. Это почему?

<?php

class Connection {

private $sql_info = "default";
function __construct($Info) {

//Set new value of $sql_info
$sql_info = $Info;
}

function Connect() {
global $sql_info;

//echo the newly set string
echo $sql_info;
}
}
?>

Спасибо!

-2

Решение

Вам нужно написать $this!

Попробуй это:

<?php

class Connection {

private $sql_info = "default";

function __construct($Info) {

//Set new value of $sql_info
$this->sql_info = $Info;
}

function Connect() {
global $sql_info;

//echo the newly set string
echo $this->sql_info;
}
}
?>
2

Другие решения

Просто используйте переменную класса, используя ключевое слово «this». Он объявлен как частная переменная в вашем коде.

1

По вопросам рекламы [email protected]