怎么释放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 调用
PHP 调用 COM 对象**在PHP中,调用Delphi创建的COM对象主要使用`COM`函数。以下是如何调用上述`IMyComObject`接口的示例:```php<?
如何用Windows COM对象制作PHP条码阅读器?
$barcodeValue;} else { echo "未找到条码";}```步骤六:错误处理和资源释放在使用完COM对象后,记得释放资源,防止内存泄漏:```php$barCodeReader =
php通过COM类调用组件的实现代码
PHP通过COM类调用组件的示例代码: ```php <?
Windows平台的 PHP 报错 Fatal error: Class COM not found in 的解决方法
**配置php.ini**:在`php.ini`配置文件中,你需要添加或者确保存在以下配置行: ``` [PHP_COM_DOTNET] extension=php_com_dotnet.dll ```
PHP读取word文档的方法分析【基于COM组件】
如果你对其他Office格式(如Excel或PowerPoint)的操作感兴趣,原理类似,只需更换相应的COM对象即可。


基础编程
