|
本帖最后由 mahone 于 2010-6-11 16:07 编辑
PHP复制代码 public function generate_large_data ()
{
$arr = array(
'username'=>'jakcy',
'password'=>'123456',
'email'=>'jacky@json.org',
'create_time'=>'');
for ($i=0; $i<100000; $i++)
{
$tmp = $arr;
$tmp['username'] = $tmp['username'].'_'.$i;
$tmp['password'] = $tmp['password'].'_'.$i;
$tmp['email'] = $tmp['email'].'_'.$i;
$tmp['create_time'] = time();
$this->db->insert('test111', $tmp);
$tmp = null;
echo 'insert user = '.$i.'<br/>';
}
} 复制代码 我写了这样一串代码,我的php,memory_limit = 24M
于是在i到7w1左右的时候内存爆了……
Fatal error: Allowed memory size of 25165824 bytes exhausted (tried to allocate 1008 bytes) in E:\code\codeigniter\trunk\src\system\database\drivers\mysql\mysql_driver.php on line 1355
我知道应该是内存没释放,但是不知道怎么释放
注释的地方我用unset释放,不行
我这样释放$tmp = null;,也不行
高手教我,到底该怎么释放内存。 |
|