我有一个很大的JS对象,可以通过卷曲获得,我需要将其分解以进一步写入MYSQL。但是,当我尝试在前叉循环中进行遍历时,遇到了memory_size不足的问题。是否有任何选项可以在服务器上减少负载的情况下处理数组,而无需在php中增加内存大小?这是我的代码,但是不起作用
致命错误:耗尽了33554432字节的允许内存大小(尝试分配20480字节)
<?php
#ini_set('memory_limit', '-1');
if( $curl = curl_init() ) {
curl_setopt($curl, CURLOPT_AUTOREFERER, TRUE);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($curl,CURLOPT_URL,'http://img.combats.com/auction/dump.js');
curl_setopt($curl,CURLOPT_RETURNTRANSFER,true);
$out_shortinfo = curl_exec($curl);
$json = json_decode(str_replace('var auction_dump=', '', $out_shortinfo), true);
foreach ($json as $key=>$value) {
if($key > 0)
{
echo $value['name'].' ';
echo $value['txt'].' ';
echo $value['_auc']['id'].'<br>';
}
}
curl_close($curl);
}
?>
答案 0 :(得分:0)
尝试这个兄弟
echo $value['name'].' ';
echo $value['txt'].' ';
echo $value['_auc']['id'].'<br>';
@ob_flush(); @flush();