2013-06-27 3 views
1

Мне нужно создать глобальный объект, который может быть доступен из других php-файлов моего скрипта.Создание глобального объекта в PHP

Моя точка зрения, создайте только один COM-объект, когда запущен скрипт/сервер. И этот COM-объект будет ждать, пока мои команды будут обработаны.

Я попытался написать класс, чтобы это произошло, но когда я обновляю страницу, перезагружается мой класс, а мои статические переменные переопределяются.

Есть ли какой-либо код или какой-либо класс или способ решить эту проблему?

Спасибо всем.

+1

PHP не поддерживает состояние между запросами страниц (например, обновления страницы), если не поддерживать его в $ _SESSION; и я не считаю, что COM-объект может поддерживаться в сеансе. Возможной альтернативой может быть создание процесса демона, который всегда выполняется на сервере, который поддерживает ваш объект COM, а затем делает запросы от вашего скрипта PHP к процессу демона. –

+0

Нет, это не то, чего я действительно хочу. Я хочу сказать, что я создам COM-объект (DLL-соединение) в другом файле php. Этот файл будет ждать моих команд, чтобы сделать какой-то процесс. Например, файл COM.php работает и ждет мою команду. test.php - это мой php-файл для отправки команд COM-объекту, который я создал в COM.php-файле. – user2525841

+0

Вы можете использовать APC или memcache для хранения объектов в памяти. http://php.net/apc_store – jgb

ответ

0

Если вы находитесь вне функции, вы можете определить ее. Когда вы находитесь в функции, вы используете ключевое слово global, чтобы «втянуть» его в функцию.

Пример:

<?php 
$foo = "bar"; 
echo $foo; // bar 

function test1() { 
    echo $foo; // error 
} 
test1(); 

function test2() { 
    global $foo; 
    echo $foo; // bar 
} 
test2(); 
?> 
+0

Это не то, о чем просит ОП. Ему нужен объект, который сохраняется в нескольких вызовах сценариев. –