怎么释放php的com对象或者变量?
我用php做的网站,好像有内存泄漏问题,时间久了apache.exe 占用的内存就特别大。请精通的朋友们帮助看看我的代码有没有问题!谢谢!
1. com对象的使用和释放.
$SrvCom = new Com('ABBApp.CoABBApp');
$SrvCom->MethodUserInfo(@$_SERVER["REMOTE_ADDR"]);
$SrvCom = null;
2. 写了一个函数读取adorecordset的字段值得。
function RdVal(&$Data, $Id)
{
$Field = @$Data->Fields->Item($Id);
return(@$Field->Value);
$Field = null;
}
$Data :ado记录集对象;
$Id: 字段的序号;
3. ado对象的使用;
我每次都会应用一个叶面内创建connection 对象.
//create ado
$DBConn = new Com('adodb.connection');
$ConStr = 'Provider=SQLOLEDB.1;Password="";Persist Security Info=True;User ID=sa;Initial Catalog=sdb;Data Source=(local) ';
$DBConn->Open($ConStr);
//free ado
$DBConn->Close();
$DBConn = null;
以上是我使用对象和释放对象的代码,有内存泄漏!不知问题在哪儿,还有其他类型的变量使用后是不是都要置一下null ? 谢谢!
1. com对象的使用和释放.
$SrvCom = new Com('ABBApp.CoABBApp');
$SrvCom->MethodUserInfo(@$_SERVER["REMOTE_ADDR"]);
$SrvCom = null;
2. 写了一个函数读取adorecordset的字段值得。
function RdVal(&$Data, $Id)
{
$Field = @$Data->Fields->Item($Id);
return(@$Field->Value);
$Field = null;
}
$Data :ado记录集对象;
$Id: 字段的序号;
3. ado对象的使用;
我每次都会应用一个叶面内创建connection 对象.
//create ado
$DBConn = new Com('adodb.connection');
$ConStr = 'Provider=SQLOLEDB.1;Password="";Persist Security Info=True;User ID=sa;Initial Catalog=sdb;Data Source=(local) ';
$DBConn->Open($ConStr);
//free ado
$DBConn->Close();
$DBConn = null;
以上是我使用对象和释放对象的代码,有内存泄漏!不知问题在哪儿,还有其他类型的变量使用后是不是都要置一下null ? 谢谢!
...全文
相关推荐
delphi com对象 php 调用
delphi com对象的制作 com 对象PHP调用
如何用Windows COM对象制作PHP条码阅读器?
本文说明了如何使用PHP和Windows组件对象模型(COM)来实现在线条形码阅读器。
php通过COM类调用组件的实现代码
COM(Component Object Model)组件对象模型,是一种跨应用和语言共享二进制代码的方法。COM可以作为DLL被本机程序载入也可以通过DCOM被远程进程调用
Windows平台的 PHP 报错 Fatal error: Class COM not found in 的解决方法
主要介绍了Windows平台的 PHP 报错 Fatal error: Class COM not found in 的解决方法,需要的朋友可以参考下
PHP读取word文档的方法分析【基于COM组件】
主要介绍了PHP读取word文档的方法,较为详细的分析了COM组件的开启、属性设置及基于COM组件打开并读取word文档的操作技巧,需要的朋友可以参考下


基础编程

