2013-06-27 59 views
1

我需要创建一个全局对象,可以从我的脚本的其他php文件中访问该对象。在PHP中创建全局对象

我的观点是,创建只有一个脚本/服务器启动时的COM对象。这个COM对象将等待我的命令进行一些处理工作。

我试着写一个类来实现它,但是当我刷新页面时,我的类重新加载并且我的静态变量重新定义。

有没有任何代码或任何类或方法来解决这个问题?

谢谢大家。

+1

PHP,除非你将其保持在不维护页面请求(如页面刷新)之间的状态$ _SESSION;我不相信COM对象可以在会话中保持。一种可能的替代方案可能是创建一个守护进程,并始终在维护COM对象的服务器上运行,然后向您的PHP脚本发出请求到守护进程 –

+0

不,实际上并不是我想要的。我的观点是,我将在一个不同的php文件中创建一个COM对象(DLL连接)。这个文件将等待我的命令做出一些处理。例如,COM.php文件正在运行并等待我的命令。 test.php是我的php文件,用于将命令发送给我在COM.php文件中创建的COM对象。 – 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

这不是OP要求的。他希望跨多个脚本调用持续存在的对象。 –