1

我来自 C++,我经常使用 RAII。

据我所知,PHP 使用自动内存管理,那么通过 PHP 的构造函数/析构函数使用 RAII 是否仍然适用/良好的做法?

4

2 回答 2

0

据我所知,我不相信 RAII 可以在 PHP 中实现。不保证在关联对象作用域时调用析构函数,而是在 PHP 运行时认为不再引用该对象时调用。因此,对于 RAII,它可能不那么可靠。可能值得详细阅读此文档:

http://php.net/manual/en/language.oop5.decon.php

于 2012-12-07T08:49:32.110 回答
0

由于 RAII 用于锁定线程、文件操作。在 php 中你没有线程,只有分叉。没关系,将核心对象分配并创建到构造函数中,并在析构函数中释放内存,即使 php 5.3 具有非常好的垃圾收集器,这仍然是一种很好的做法。

于 2012-12-07T08:52:44.663 回答