43-6ren">
gpt4 book ai didi

PHP 垃圾回收

转载 作者:行者123 更新时间:2023-12-05 01:22:06 26 4
gpt4 key购买 nike

我想问你,在PHP中,如果我在一个函数中创建一个新的类,在函数结束时内存会被释放吗?

例如:类

class config
{
var $mapProp = array("x"=>4333, "y"=>3520, "w"=>128, "h"=>128);
var $gameProp = array("maxLevel"=>14, "tilesSize"=>256);
var $mapUrl = 'map_files';
function getMapProp()
{
return $this->mapProp;
}
function getGameProp()
{
return $this->gameProp;
}
function getMapUrl()
{
return $this->mapUrl;
}
}
$config = new config();

和函数

class framework
{
function getUserMap()
{
require("class/config/config.php");
require("class/imageManipulation/image.php");

$mapUrl = $config->getMapUrl();
$x = $_GET['x'];
$y = $_GET['y'];
$level = $_GET['level'];

$main_img = $mapUrl.'/'.$level.'/'.$x.'_'.$y.'.jpg';
//Create a new class
$image = new imageManipulation();

//Set Up variables
$image->setProp($config->getMapProp());
$image->setGameProp($config->getGameProp());

return $image->getImage($main_img, $level, $x, $y);
}
}
$framework = new framework();

require("class/framework/framework.php");

$path = $_GET['path'];

switch ($path) {
case 'usermap':
$framework->getUserMap();
break;
}

在 getUserMap 中我使用了两个类。其中一个是$config类,另一个是$image类,函数结束后这两个类占用的内存会被释放吗?

祝一切顺利,罗伯特。

最佳答案

是的。局部变量在函数调用结束时释放。如果这些局部变量之一是对象,则不再引用它。因此它将被垃圾收集器释放。

关于PHP 垃圾回收,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5302241/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com