成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

數(shù)據(jù)處理php 數(shù)據(jù)處理公司

在PHP中怎么解決大量數(shù)據(jù)處理的問題

mysql_query函數(shù)查詢的方式是查詢出全部結(jié)果后緩存到內(nèi)存中,這樣就會(huì)出現(xiàn)超內(nèi)存的現(xiàn)象,使用另外一個(gè)函數(shù)mysql_unbuffered_query可以解決這個(gè)問題,mysql_unbuffered_query不會(huì)緩存結(jié)果集,而是查詢出來數(shù)據(jù)后立馬對(duì)結(jié)果集進(jìn)行操作,也就是便查詢邊返回,這樣就不會(huì)出現(xiàn)超出內(nèi)存的現(xiàn)象,但是使用mysql_unbuffered_query的是時(shí)候不能使用 mysql_num_rows() 和 mysql_data_seek()。并且向 MySQL 發(fā)送一條新的 SQL 查詢之前,必須提取掉所有未緩存的 SQL 查詢所產(chǎn)生的結(jié)果行。例如:

創(chuàng)新互聯(lián)公司執(zhí)著的堅(jiān)持網(wǎng)站建設(shè),微信小程序開發(fā);我們不會(huì)轉(zhuǎn)行,已經(jīng)持續(xù)穩(wěn)定運(yùn)營(yíng)十多年。專業(yè)的技術(shù),豐富的成功經(jīng)驗(yàn)和創(chuàng)作思維,提供一站式互聯(lián)網(wǎng)解決方案,以客戶的口碑塑造品牌,攜手廣大客戶,共同發(fā)展進(jìn)步。

使用緩存結(jié)果集的代碼:

function selecttest()

{

try {

$pdo = new PDO("mysql:host=localhost;dbname=test", 'root', '123456');

// 不使用緩存結(jié)果集方式

// $pdo-setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false);

$sth = $pdo-prepare('select * from test');

$sth-execute();

echo '最初占用內(nèi)存大?。? . memory_get_usage() . "\n";

$i = 0;

while ($result = $sth-fetch(PDO::FETCH_ASSOC)) {

$i += 1;

if ($i 10) {

break;

}

sleep(1);

print_r($result);

echo '占用內(nèi)存大?。? . memory_get_usage() . "\n";

}

} catch (Exception $e) {

echo $e-getMessage();

}

}

執(zhí)行時(shí)將會(huì)報(bào)超出內(nèi)存的錯(cuò)誤:

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 204800000 bytes) in E:\ProgramDevelopment\RuntimeEnvironment\xampp\htdocs\test\test.php on line 56

Call Stack:

0.0005 135392 1. {main}() E:\ProgramDevelopment\RuntimeEnvironment\xampp\htdocs\test\test.php:0

0.0005 135568 2. test-selecttest() E:\ProgramDevelopment\RuntimeEnvironment\xampp\htdocs\test\test.php:85

0.0050 142528 3. PDOStatement-execute() E:\ProgramDevelopment\RuntimeEnvironment\xampp\htdocs\test\test.php:56

將上面代碼中的$pdo-setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false);一行的注釋去掉后將不在緩存結(jié)果集,這時(shí)運(yùn)行該函數(shù)的結(jié)果如下:

最初占用內(nèi)存大小:144808

Array

(

[id] = 1

[a] = v

[b] = w

[c] = i

)

占用內(nèi)存大?。?45544

Array

(

[id] = 2

[a] = b

[b] = l

[c] = q

)

占用內(nèi)存大小:145544

Array

(

[id] = 3

[a] = m

[b] = p

[c] = h

)

占用內(nèi)存大?。?45536

Array

(

[id] = 4

[a] = j

[b] = i

[c] = b

)

占用內(nèi)存大?。?45536

可以看到,這時(shí)返回一條數(shù)據(jù)內(nèi)存占用非常的小,也就700多字節(jié),這樣就不會(huì)出現(xiàn)超出內(nèi)存的錯(cuò)誤了。

php處理大量數(shù)據(jù)時(shí),運(yùn)行到一定時(shí)間就中斷了,請(qǐng)問如何解決

php處理數(shù)據(jù)時(shí)會(huì)有一個(gè)等待時(shí)間,就是所說的超時(shí)時(shí)間,而且如果使用mysql的話,它也有一個(gè)超時(shí)時(shí)間,運(yùn)行一串代碼時(shí)間如果超過配置文件的時(shí)間,會(huì)被中斷不運(yùn)行。第一種你可以修改php配置文件timeout的運(yùn)行時(shí)間,第二你可以分批處理大量數(shù)據(jù),注意是分批處理,就OK了。

PHP處理數(shù)據(jù)庫(kù)

請(qǐng)檢查一下$WB對(duì)應(yīng)的表是否已經(jīng)定義?提示的是(indexx附近有語法錯(cuò)誤。是你的SQL語句有問題,

建議將執(zhí)行的SQL單獨(dú)賦值。

$sql="insert into $WB (indexx,id,mid,uid,parent,t,reposts_count,attitudes_count,comments_count,text,original_text,user_created_at,followers_count,

bi_followers_count,favourites_count,statuses_count,friends_count,username,screen_name,user_description,gender,province,city,verified,verified_reason,verified_type,

user_location,user_avatar,user_geo_enabled,picture,geo) values $data_values");";

echo $sql."br/";//測(cè)試輸出,然后檢查該SQL語句的語法是否正確。

$query=mysqli_query($sql);

文章標(biāo)題:數(shù)據(jù)處理php 數(shù)據(jù)處理公司
地址分享:http://jinyejixie.com/article6/ddispog.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、網(wǎng)站改版、云服務(wù)器、域名注冊(cè)、網(wǎng)站收錄、用戶體驗(yàn)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站
乌兰察布市| 突泉县| 嫩江县| 临武县| 建湖县| 巩留县| 界首市| 新宾| 马鞍山市| 乌苏市| 延寿县| 长兴县| 淄博市| 渭南市| 临泽县| 江口县| 萨迦县| 西畴县| 荃湾区| 那坡县| 大关县| 崇州市| 新建县| 牡丹江市| 陈巴尔虎旗| 宜都市| 鞍山市| 玉树县| 浠水县| 舒兰市| 宣威市| 衢州市| 淳安县| 柳林县| 漳浦县| 垣曲县| 大城县| 东源县| 丹东市| 肥乡县| 宝应县|