Используйте глобальное ключевое слово :
В файле, в котором вы присваиваете значение.
global $tablePages;
$tablePages = 'orweb_pages';
И в другом файле:
class URIResolve {
var $category;
function process_uri() {
global $tablePages;
$this->category = $tablePages;
}
}
Кроме того, все глобальные переменные доступны в массиве $GLOBALS
(который сам является суперглобальным), поэтому вы можете получить доступ к глобальной переменной в любом месте, не используя ключевое слово global, выполнив что-то вроде этого:
$my_value = $GLOBALS['tablePages'];
Это также усложняет случайное перезапись значения глобала. В первом примере любые изменения, сделанные вами в $tablePages
, будут изменять глобальную переменную. Многие ошибки безопасности были созданы при наличии глобального $user
и перезаписи его более мощной информацией пользователя.
Другой, еще более безопасный подход - предоставить переменную в конструкторе для URIResolve:
class URIResolve {
var $category;
function __construct ($tablePages) {
$this->category= $tablePages;
}
function process_uri() {
// Now you can access table pages here as an variable instance
}
}
// This would then be used as:
new URIResolve($tablePages);